[PATCH 4 of 4 V3] exchange: use `bookmarks` bundle2 part

Stanislau Hlebik stash at fb.com
Tue Aug 30 05:46:34 EDT 2016


I think we can use it for push as well.
BTW, previous ‘pushkey’ bundle2 part used tolocal/fromlocal encoding, which I don’t use for now.
I should probably add it, right?

On 8/29/16, 10:18 PM, "Augie Fackler" <raf at durin42.com> wrote:

    
    > On Aug 29, 2016, at 15:56, Stanislau Hlebik <stash at fb.com> wrote:
    > 
    > You are right, it doesn’t work with push.
    > In previous patches I added bookmarks part only for getbundle2partsgenerator.
    > And there is already @b2partsgenerator('bookmarks') which uses pushkey.
    
    Right, and that exchange mechanism is a major regression in bundle2 (https://urldefense.proofpoint.com/v2/url?u=https-3A__bz.mercurial-2Dscm.org_show-5Fbug.cgi-3Fid-3D5165&d=DQIFaQ&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=GOtlQI9FBBjudagjDD1CoYqemQtuvleaRJSVadMi2e8&s=HBV5xJ8YeLiwLPoa3a9OG3MPNyEDfYni6ihI2lwjP6I&e= ). If we're going to add a new bookmarks exchange format, it should really resolve that issue as well. Is there any reason we can't use the new format for push as well? I'd be very enthusiastic about the change if so.
    
    > 
    > On 8/29/16, 3:49 PM, "Augie Fackler" <raf at durin42.com> wrote:
    > 
    >    On Thu, Aug 25, 2016 at 10:59:51AM -0700, Stanislau Hlebik wrote:
    >> # HG changeset patch
    >> # User Stanislau Hlebik <stash at fb.com>
    >> # Date 1472147870 25200
    >> #      Thu Aug 25 10:57:50 2016 -0700
    >> # Node ID d4b5bd8ed1073c49e95063ac47c1892232546ec0
    >> # Parent  514a4d3a63ff010c38361bb922f43febbf5b6d55
    >> exchange: use `bookmarks` bundle2 part
    > 
    >    It's likely I'm missing something here, but does this work for push as
    >    well as pull? I only see mentions of pullops here, and my limited
    >    testing suggests that push is still using listkeys instead of
    >    bookmarks parts with this applied.
    > 
    >> 
    >> Prefer to use `bookmarks` part instead of `listkeys`
    >> whenever possible.
    >> 
    >> diff --git a/mercurial/exchange.py b/mercurial/exchange.py
    >> --- a/mercurial/exchange.py
    >> +++ b/mercurial/exchange.py
    >> @@ -1301,9 +1301,13 @@
    >>     kwargs['cg'] = pullop.fetch
    >>     if 'listkeys' in pullop.remotebundle2caps:
    >>         kwargs['listkeys'] = ['phases']
    >> -        if pullop.remotebookmarks is None:
    >> -            # make sure to always includes bookmark data when migrating
    >> -            # `hg incoming --bundle` to using this function.
    >> +
    >> +    if pullop.remotebookmarks is None:
    >> +        # make sure to always includes bookmark data when migrating
    >> +        # `hg incoming --bundle` to using this function.
    >> +        if 'bookmarks' in pullop.remotebundle2caps:
    >> +            kwargs['bookmarks'] = True
    >> +        elif 'listkeys' in pullop.remotebundle2caps:
    >>             kwargs['listkeys'].append('bookmarks')
    >> 
    >>     # If this is a full pull / clone and the server supports the clone bundles
    >> @@ -1345,6 +1349,10 @@
    >>             _pullapplyphases(pullop, value)
    >> 
    >>     # processing bookmark update
    >> +    for remotebookmarks in op.records['bookmarks']:
    >> +        pullop.remotebookmarks = remotebookmarks
    >> +
    >> +    # processing bookmark update
    >>     for namespace, value in op.records['listkeys']:
    >>         if namespace == 'bookmarks':
    >>             pullop.remotebookmarks = value
    >> diff --git a/tests/test-acl.t b/tests/test-acl.t
    >> --- a/tests/test-acl.t
    >> +++ b/tests/test-acl.t
    >> @@ -92,13 +92,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -155,13 +155,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -221,13 +221,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -297,13 +297,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -362,13 +362,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -432,13 +432,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -499,13 +499,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -571,13 +571,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -640,13 +640,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -711,13 +711,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -794,13 +794,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -872,13 +872,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -945,13 +945,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1029,13 +1029,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1115,13 +1115,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1197,13 +1197,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1273,13 +1273,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1356,13 +1356,13 @@
    >>   f9cafe1212c8c6fa1120d14a556e18cc44ff8bdd
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   bundle2-output-bundle: "HG20", 4 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1471,14 +1471,14 @@
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
    >>   bundle2-output-bundle: "HG20", 5 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1559,14 +1559,14 @@
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
    >>   bundle2-output-bundle: "HG20", 5 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1633,14 +1633,14 @@
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
    >>   bundle2-output-bundle: "HG20", 5 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1703,14 +1703,14 @@
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
    >>   bundle2-output-bundle: "HG20", 5 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1767,14 +1767,14 @@
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
    >>   bundle2-output-bundle: "HG20", 5 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1860,14 +1860,14 @@
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
    >>   bundle2-output-bundle: "HG20", 5 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -1952,14 +1952,14 @@
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
    >>   bundle2-output-bundle: "HG20", 5 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -2021,14 +2021,14 @@
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
    >>   bundle2-output-bundle: "HG20", 5 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> @@ -2107,14 +2107,14 @@
    >>   911600dab2ae7a9baff75958b84fe606851ce955
    >>   e8fc755d4d8217ee5b0c2bb41558c40d43b92c01
    >>   bundle2-output-bundle: "HG20", 5 parts total
    >> -  bundle2-output-part: "replycaps" 155 bytes payload
    >> +  bundle2-output-part: "replycaps" 165 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-input-bundle: with-transaction
    >>   bundle2-input-part: "replycaps" supported
    >> -  bundle2-input-part: total payload size 155
    >> +  bundle2-input-part: total payload size 165
    >>   bundle2-input-part: "check:heads" supported
    >>   bundle2-input-part: total payload size 20
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory) supported
    >> diff --git a/tests/test-clone-uncompressed.t b/tests/test-clone-uncompressed.t
    >> --- a/tests/test-clone-uncompressed.t
    >> +++ b/tests/test-clone-uncompressed.t
    >> @@ -45,7 +45,7 @@
    >>   bundle2-input-bundle: with-transaction
    >>   bundle2-input-part: "listkeys" (params: 1 mandatory) supported
    >>   bundle2-input-part: total payload size 58
    >> -  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
    >> +  bundle2-input-part: "bookmarks" supported
    >>   bundle2-input-bundle: 1 parts total
    >>   checking for updated bookmarks
    >> 
    >> diff --git a/tests/test-clonebundles.t b/tests/test-clonebundles.t
    >> --- a/tests/test-clonebundles.t
    >> +++ b/tests/test-clonebundles.t
    >> @@ -32,7 +32,7 @@
    >>   $ cat server/access.log
    >>   * - - [*] "GET /?cmd=capabilities HTTP/1.1" 200 - (glob)
    >>   * - - [*] "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D (glob)
    >> -  * - - [*] "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=aaff8d2ffbbf07a46dd1f05d8ae7877e3f56e2a2&listkeys=phases%2Cbookmarks (glob)
    >> +  * - - [*] "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=aaff8d2ffbbf07a46dd1f05d8ae7877e3f56e2a2&listkeys=phases (glob)
    >> 
    >> Empty manifest file results in retrieval
    >> (the extension only checks if the manifest file exists)
    >> diff --git a/tests/test-hgweb-commands.t b/tests/test-hgweb-commands.t
    >> --- a/tests/test-hgweb-commands.t
    >> +++ b/tests/test-hgweb-commands.t
    >> @@ -1903,7 +1903,7 @@
    >>   $ get-with-headers.py 127.0.0.1:$HGPORT '?cmd=capabilities'; echo
    >>   200 Script output follows
    >> 
    >> -  lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch bundle2=HG20%0Achangegroup%3D01%2C02%0Adigests%3Dmd5%2Csha1%2Csha512%0Aerror%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0Ahgtagsfnodes%0Alistkeys%0Apushkey%0Aremote-changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024
    >> +  lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch bundle2=HG20%0Abookmarks%0Achangegroup%3D01%2C02%0Adigests%3Dmd5%2Csha1%2Csha512%0Aerror%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0Ahgtagsfnodes%0Alistkeys%0Apushkey%0Aremote-changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024
    >> 
    >> heads
    >> 
    >> @@ -2148,7 +2148,7 @@
    >>   batch
    >>   stream-preferred
    >>   streamreqs=generaldelta,revlogv1
    >> -  bundle2=HG20%0Achangegroup%3D01%2C02%0Adigests%3Dmd5%2Csha1%2Csha512%0Aerror%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0Ahgtagsfnodes%0Alistkeys%0Apushkey%0Aremote-changegroup%3Dhttp%2Chttps
    >> +  bundle2=HG20%0Abookmarks%0Achangegroup%3D01%2C02%0Adigests%3Dmd5%2Csha1%2Csha512%0Aerror%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0Ahgtagsfnodes%0Alistkeys%0Apushkey%0Aremote-changegroup%3Dhttp%2Chttps
    >>   unbundle=HG10GZ,HG10BZ,HG10UN
    >>   httpheader=1024
    >> 
    >> diff --git a/tests/test-http-proxy.t b/tests/test-http-proxy.t
    >> --- a/tests/test-http-proxy.t
    >> +++ b/tests/test-http-proxy.t
    >> @@ -104,16 +104,16 @@
    >>   * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dbranchmap&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=fFZb9IC5hnu8RVvcihqtJbE_eFmU7WF1xe12iamGtSo&e=  HTTP/1.1" - - (glob)
    >>   * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dstream-5Fout&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=0daoH8aaJwQdrtbls-aPnPTqik1FebVvGaBRVkvrcEs&e=  HTTP/1.1" - - (glob)
    >>   * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dbatch&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=tWEN6suk1wpapf0F-oW0bVsrTI0sRjCeDnPvOZRrJPM&e=  HTTP/1.1" - - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D83180e7845de420a1bb46896fd5fe05294f8d629 (glob)
    >> -  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dgetbundle&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=BG_22l20K1NH4aV6JyV46240ictxTCK4mi_ZPUdsAwg&e=  HTTP/1.1" - - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=0&common=83180e7845de420a1bb46896fd5fe05294f8d629&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=phases%2Cbookmarks (glob)
    >> -  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dcapabilities&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=e0aS42TXCoJ3OBq0gq4MYYBAxJ8o3V0IJXkjCCOIv_Y&e=  HTTP/1.1" - - (glob)
    >> -  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dbatch&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=tWEN6suk1wpapf0F-oW0bVsrTI0sRjCeDnPvOZRrJPM&e=  HTTP/1.1" - - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D (glob)
    >> -  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dgetbundle&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=BG_22l20K1NH4aV6JyV46240ictxTCK4mi_ZPUdsAwg&e=  HTTP/1.1" - - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=phases%2Cbookmarks (glob)
    >> +  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dgetbundle&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=BG_22l20K1NH4aV6JyV46240ictxTCK4mi_ZPUdsAwg&e=  HTTP/1.1" - - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=0&common=83180e7845de420a1bb46896fd5fe05294f8d629&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=phases (glob)
    >>   * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dcapabilities&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=e0aS42TXCoJ3OBq0gq4MYYBAxJ8o3V0IJXkjCCOIv_Y&e=  HTTP/1.1" - - (glob)
    >>   * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dbatch&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=tWEN6suk1wpapf0F-oW0bVsrTI0sRjCeDnPvOZRrJPM&e=  HTTP/1.1" - - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D (glob)
    >> -  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dgetbundle&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=BG_22l20K1NH4aV6JyV46240ictxTCK4mi_ZPUdsAwg&e=  HTTP/1.1" - - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=phases%2Cbookmarks (glob)
    >> +  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dgetbundle&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=BG_22l20K1NH4aV6JyV46240ictxTCK4mi_ZPUdsAwg&e=  HTTP/1.1" - - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=phases (glob)
    >>   * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dcapabilities&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=e0aS42TXCoJ3OBq0gq4MYYBAxJ8o3V0IJXkjCCOIv_Y&e=  HTTP/1.1" - - (glob)
    >>   * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dbatch&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=tWEN6suk1wpapf0F-oW0bVsrTI0sRjCeDnPvOZRrJPM&e=  HTTP/1.1" - - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D (glob)
    >> -  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dgetbundle&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=BG_22l20K1NH4aV6JyV46240ictxTCK4mi_ZPUdsAwg&e=  HTTP/1.1" - - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=phases%2Cbookmarks (glob)
    >> +  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dgetbundle&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=BG_22l20K1NH4aV6JyV46240ictxTCK4mi_ZPUdsAwg&e=  HTTP/1.1" - - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=phases (glob)
    >>   * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dcapabilities&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=e0aS42TXCoJ3OBq0gq4MYYBAxJ8o3V0IJXkjCCOIv_Y&e=  HTTP/1.1" - - (glob)
    >>   * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dbatch&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=tWEN6suk1wpapf0F-oW0bVsrTI0sRjCeDnPvOZRrJPM&e=  HTTP/1.1" - - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D (glob)
    >> -  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dgetbundle&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=BG_22l20K1NH4aV6JyV46240ictxTCK4mi_ZPUdsAwg&e=  HTTP/1.1" - - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=phases%2Cbookmarks (glob)
    >> +  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dgetbundle&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=BG_22l20K1NH4aV6JyV46240ictxTCK4mi_ZPUdsAwg&e=  HTTP/1.1" - - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=phases (glob)
    >> +  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dcapabilities&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=e0aS42TXCoJ3OBq0gq4MYYBAxJ8o3V0IJXkjCCOIv_Y&e=  HTTP/1.1" - - (glob)
    >> +  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dbatch&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=tWEN6suk1wpapf0F-oW0bVsrTI0sRjCeDnPvOZRrJPM&e=  HTTP/1.1" - - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D (glob)
    >> +  * - - [*] "GET https://urldefense.proofpoint.com/v2/url?u=http-3A__localhost-3A-24HGPORT_-3Fcmd-3Dgetbundle&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=BG_22l20K1NH4aV6JyV46240ictxTCK4mi_ZPUdsAwg&e=  HTTP/1.1" - - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=83180e7845de420a1bb46896fd5fe05294f8d629&listkeys=phases (glob)
    >> diff --git a/tests/test-http.t b/tests/test-http.t
    >> --- a/tests/test-http.t
    >> +++ b/tests/test-http.t
    >> @@ -262,11 +262,11 @@
    >>   "GET /?cmd=stream_out HTTP/1.1" 401 -
    >>   "GET /?cmd=stream_out HTTP/1.1" 200 -
    >>   "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D5fed3813f7f5e1824344fdc9cf8f63bb662c292d
    >> -  "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=0&common=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=phases%2Cbookmarks
    >> +  "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=0&common=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=phases
    >>   "GET /?cmd=capabilities HTTP/1.1" 200 -
    >>   "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D
    >> -  "GET /?cmd=getbundle HTTP/1.1" 401 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=phases%2Cbookmarks
    >> -  "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=phases%2Cbookmarks
    >> +  "GET /?cmd=getbundle HTTP/1.1" 401 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=phases
    >> +  "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bookmarks=1&bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=0000000000000000000000000000000000000000&heads=5fed3813f7f5e1824344fdc9cf8f63bb662c292d&listkeys=phases
    >>   "GET /?cmd=capabilities HTTP/1.1" 200 -
    >>   "GET /?cmd=lookup HTTP/1.1" 200 - x-hgarg-1:key=tip
    >>   "GET /?cmd=listkeys HTTP/1.1" 401 - x-hgarg-1:namespace=namespaces
    >> diff --git a/tests/test-obsolete-changeset-exchange.t b/tests/test-obsolete-changeset-exchange.t
    >> --- a/tests/test-obsolete-changeset-exchange.t
    >> +++ b/tests/test-obsolete-changeset-exchange.t
    >> @@ -135,7 +135,7 @@
    >>   bundle2-output-bundle: "HG20", 3 parts total
    >>   bundle2-output-part: "changegroup" (params: 1 mandatory 1 advisory) streamed payload
    >>   bundle2-output-part: "listkeys" (params: 1 mandatory) 58 bytes payload
    >> -  bundle2-output-part: "listkeys" (params: 1 mandatory) empty payload
    >> +  bundle2-output-part: "bookmarks" empty payload
    >>   bundle2-input-bundle: with-transaction
    >>   bundle2-input-part: "changegroup" (params: 1 mandatory 1 advisory) supported
    >>   adding changesets
    >> @@ -147,7 +147,7 @@
    >>   bundle2-input-part: total payload size 474
    >>   bundle2-input-part: "listkeys" (params: 1 mandatory) supported
    >>   bundle2-input-part: total payload size 58
    >> -  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
    >> +  bundle2-input-part: "bookmarks" supported
    >>   bundle2-input-bundle: 2 parts total
    >>   checking for updated bookmarks
    >>   updating the branch cache
    >> diff --git a/tests/test-setdiscovery.t b/tests/test-setdiscovery.t
    >> --- a/tests/test-setdiscovery.t
    >> +++ b/tests/test-setdiscovery.t
    >> @@ -350,7 +350,7 @@
    >>   $ cut -d' ' -f6- access.log | grep -v cmd=known # cmd=known uses random sampling
    >>   "GET /?cmd=capabilities HTTP/1.1" 200 -
    >>   "GET /?cmd=batch HTTP/1.1" 200 - x-hgarg-1:cmds=heads+%3Bknown+nodes%3D513314ca8b3ae4dac8eec56966265b00fcf866db
    >> -  "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=513314ca8b3ae4dac8eec56966265b00fcf866db&heads=e64a39e7da8b0d54bc63e81169aff001c13b3477
    >> +  "GET /?cmd=getbundle HTTP/1.1" 200 - x-hgarg-1:bundlecaps=HG20%2Cbundle2%3DHG20%250Abookmarks%250Achangegroup%253D01%252C02%250Adigests%253Dmd5%252Csha1%252Csha512%250Aerror%253Dabort%252Cunsupportedcontent%252Cpushraced%252Cpushkey%250Ahgtagsfnodes%250Alistkeys%250Apushkey%250Aremote-changegroup%253Dhttp%252Chttps&cg=1&common=513314ca8b3ae4dac8eec56966265b00fcf866db&heads=e64a39e7da8b0d54bc63e81169aff001c13b3477
    >>   "GET /?cmd=listkeys HTTP/1.1" 200 - x-hgarg-1:namespace=phases
    >>   $ cat errors.log
    >> 
    >> diff --git a/tests/test-ssh-bundle1.t b/tests/test-ssh-bundle1.t
    >> --- a/tests/test-ssh-bundle1.t
    >> +++ b/tests/test-ssh-bundle1.t
    >> @@ -462,8 +462,8 @@
    >>   running python ".*/dummyssh" user at dummy ('|")hg -R remote serve --stdio('|") (re)
    >>   sending hello command
    >>   sending between command
    >> -  remote: 371
    >> -  remote: capabilities: lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,revlogv1 bundle2=HG20%0Achangegroup%3D01%2C02%0Adigests%3Dmd5%2Csha1%2Csha512%0Aerror%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0Ahgtagsfnodes%0Alistkeys%0Apushkey%0Aremote-changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024
    >> +  remote: 383
    >> +  remote: capabilities: lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,revlogv1 bundle2=HG20%0Abookmarks%0Achangegroup%3D01%2C02%0Adigests%3Dmd5%2Csha1%2Csha512%0Aerror%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0Ahgtagsfnodes%0Alistkeys%0Apushkey%0Aremote-changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024
    >>   remote: 1
    >>   preparing listkeys for "bookmarks"
    >>   sending listkeys command
    >> diff --git a/tests/test-ssh.t b/tests/test-ssh.t
    >> --- a/tests/test-ssh.t
    >> +++ b/tests/test-ssh.t
    >> @@ -454,8 +454,8 @@
    >>   running python ".*/dummyssh" user at dummy ('|")hg -R remote serve --stdio('|") (re)
    >>   sending hello command
    >>   sending between command
    >> -  remote: 371
    >> -  remote: capabilities: lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,revlogv1 bundle2=HG20%0Achangegroup%3D01%2C02%0Adigests%3Dmd5%2Csha1%2Csha512%0Aerror%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0Ahgtagsfnodes%0Alistkeys%0Apushkey%0Aremote-changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024
    >> +  remote: 383
    >> +  remote: capabilities: lookup changegroupsubset branchmap pushkey known getbundle unbundlehash batch streamreqs=generaldelta,revlogv1 bundle2=HG20%0Abookmarks%0Achangegroup%3D01%2C02%0Adigests%3Dmd5%2Csha1%2Csha512%0Aerror%3Dabort%2Cunsupportedcontent%2Cpushraced%2Cpushkey%0Ahgtagsfnodes%0Alistkeys%0Apushkey%0Aremote-changegroup%3Dhttp%2Chttps unbundle=HG10GZ,HG10BZ,HG10UN httpheader=1024
    >>   remote: 1
    >>   query 1; heads
    >>   sending batch command
    >> @@ -466,7 +466,7 @@
    >>   bundle2-input-bundle: with-transaction
    >>   bundle2-input-part: "listkeys" (params: 1 mandatory) supported
    >>   bundle2-input-part: total payload size 15
    >> -  bundle2-input-part: "listkeys" (params: 1 mandatory) supported
    >> +  bundle2-input-part: "bookmarks" supported
    >>   bundle2-input-part: total payload size 45
    >>   bundle2-input-bundle: 1 parts total
    >>   checking for updated bookmarks
    >> 
    >> _______________________________________________
    >> Mercurial-devel mailing list
    >> Mercurial-devel at mercurial-scm.org
    >> https://urldefense.proofpoint.com/v2/url?u=https-3A__www.mercurial-2Dscm.org_mailman_listinfo_mercurial-2Ddevel&d=DQIBAg&c=5VD0RTtNlTh3ycd41b3MUw&r=1EQ58Dmb5uX1qHujcsT1Mg&m=RNJTMbjyeqKPo18naW3vcXylm0f95dy1wMJikQjRxwA&s=X_bX1-l4BpfW9WKFCQoldDUfgq84aeR-hiE2b8nRVtw&e= 
    > 
    > 
    
    



More information about the Mercurial-devel mailing list