mercurial/bundle2.py
changeset 34320 12c42bcd4133
parent 34319 5779d096a696
child 34321 4ef472b975ff
equal deleted inserted replaced
34319:5779d096a696 34320:12c42bcd4133
  1834         for key in ('namespace', 'key', 'new', 'old', 'ret'):
  1834         for key in ('namespace', 'key', 'new', 'old', 'ret'):
  1835             if key in inpart.params:
  1835             if key in inpart.params:
  1836                 kwargs[key] = inpart.params[key]
  1836                 kwargs[key] = inpart.params[key]
  1837         raise error.PushkeyFailed(partid=str(inpart.id), **kwargs)
  1837         raise error.PushkeyFailed(partid=str(inpart.id), **kwargs)
  1838 
  1838 
  1839 def _readphaseheads(inpart):
       
  1840     headsbyphase = [[] for i in phases.allphases]
       
  1841     entrysize = phases._fphasesentry.size
       
  1842     while True:
       
  1843         entry = inpart.read(entrysize)
       
  1844         if len(entry) < entrysize:
       
  1845             if entry:
       
  1846                 raise error.Abort(_('bad phase-heads bundle part'))
       
  1847             break
       
  1848         phase, node = phases._fphasesentry.unpack(entry)
       
  1849         headsbyphase[phase].append(node)
       
  1850     return headsbyphase
       
  1851 
       
  1852 @parthandler('phase-heads')
  1839 @parthandler('phase-heads')
  1853 def handlephases(op, inpart):
  1840 def handlephases(op, inpart):
  1854     """apply phases from bundle part to repo"""
  1841     """apply phases from bundle part to repo"""
  1855     headsbyphase = _readphaseheads(inpart)
  1842     headsbyphase = phases.binarydecode(inpart)
  1856     phases.updatephases(op.repo.unfiltered(), op.gettransaction(), headsbyphase)
  1843     phases.updatephases(op.repo.unfiltered(), op.gettransaction(), headsbyphase)
  1857     op.records.add('phase-heads', {})
  1844     op.records.add('phase-heads', {})
  1858 
  1845 
  1859 @parthandler('reply:pushkey', ('return', 'in-reply-to'))
  1846 @parthandler('reply:pushkey', ('return', 'in-reply-to'))
  1860 def handlepushkeyreply(op, inpart):
  1847 def handlepushkeyreply(op, inpart):