Patchwork D3170: wireproto: don't special case bundlecaps, but sort all scsv arguments

login
register
mail settings
Submitter phabricator
Date April 6, 2018, 10:07 p.m.
Message ID <4576f85ca210dc4927d9e877fb158954@localhost.localdomain>
Download mbox | patch
Permalink /patch/30467/
State Not Applicable
Headers show

Comments

phabricator - April 6, 2018, 10:07 p.m.
This revision was automatically updated to reflect the committed changes.
Closed by commit rHG1d459f61b42a: wireproto: don&#039;t special case bundlecaps, but sort all scsv arguments (authored by joerg.sonnenberger, committed by ).

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D3170?vs=7807&id=7810

REVISION DETAIL
  https://phab.mercurial-scm.org/D3170

AFFECTED FILES
  mercurial/wireproto.py

CHANGE DETAILS




To: joerg.sonnenberger, #hg-reviewers, indygreg
Cc: indygreg, mercurial-devel

Patch

diff --git a/mercurial/wireproto.py b/mercurial/wireproto.py
--- a/mercurial/wireproto.py
+++ b/mercurial/wireproto.py
@@ -297,11 +297,7 @@ 
         kwargs = pycompat.byteskwargs(kwargs)
         self.requirecap('getbundle', _('look up remote changes'))
         opts = {}
-        bundlecaps = kwargs.get('bundlecaps')
-        if bundlecaps is not None:
-            kwargs['bundlecaps'] = sorted(bundlecaps)
-        else:
-            bundlecaps = () # kwargs could have it to None
+        bundlecaps = kwargs.get('bundlecaps') or set()
         for key, value in kwargs.iteritems():
             if value is None:
                 continue
@@ -311,8 +307,10 @@ 
                     'Unexpectedly None keytype for key %s' % key)
             elif keytype == 'nodes':
                 value = encodelist(value)
-            elif keytype in ('csv', 'scsv'):
+            elif keytype == 'csv':
                 value = ','.join(value)
+            elif keytype == 'scsv':
+                value = ','.join(sorted(value))
             elif keytype == 'boolean':
                 value = '%i' % bool(value)
             elif keytype != 'plain':