# HG changeset patch # User Boris Feld # Date 1506762569 -3600 # Node ID cd3f39716fd3ed7bbfe623c87787ed898f577cbc # Parent ff406f3e57b2655bf53ac4eb5b5cf05abe0d51b6 exchange: fix test for remote support of binary phases If the remote do not support phases, the "get" call will return None. We change that default return to empty tuple to fix the membership testing. This was a bug in the initial series. Thanks to yuja for catching this. diff -r ff406f3e57b2 -r cd3f39716fd3 mercurial/exchange.py --- a/mercurial/exchange.py Thu Sep 28 15:24:54 2017 +0100 +++ b/mercurial/exchange.py Sat Sep 30 10:09:29 2017 +0100 @@ -1353,7 +1353,8 @@ ui = pullop.repo.ui legacyphase = 'phases' in ui.configlist('devel', 'legacy.exchange') - if (not legacyphase and 'heads' in pullop.remotebundle2caps.get('phases')): + hasbinaryphase = 'heads' in pullop.remotebundle2caps.get('phases', ()) + if (not legacyphase and hasbinaryphase): kwargs['phases'] = True pullop.stepsdone.add('phases')