mercurial/changegroup.py
changeset 38783 e7aa113b14f7
parent 38556 0db41eb0a3ac
child 38794 1d01cf0416a5
equal deleted inserted replaced
38782:7eba8f83129b 38783:e7aa113b14f7
   323             needfiles = {}
   323             needfiles = {}
   324             if repo.ui.configbool('server', 'validate'):
   324             if repo.ui.configbool('server', 'validate'):
   325                 cl = repo.changelog
   325                 cl = repo.changelog
   326                 ml = repo.manifestlog
   326                 ml = repo.manifestlog
   327                 # validate incoming csets have their manifests
   327                 # validate incoming csets have their manifests
   328                 for cset in xrange(clstart, clend):
   328                 for cset in pycompat.xrange(clstart, clend):
   329                     mfnode = cl.changelogrevision(cset).manifest
   329                     mfnode = cl.changelogrevision(cset).manifest
   330                     mfest = ml[mfnode].readdelta()
   330                     mfest = ml[mfnode].readdelta()
   331                     # store file cgnodes we must see
   331                     # store file cgnodes we must see
   332                     for f, n in mfest.iteritems():
   332                     for f, n in mfest.iteritems():
   333                         needfiles.setdefault(f, set()).add(n)
   333                         needfiles.setdefault(f, set()).add(n)
   365                     hookargs['node'] = hex(cl.node(clstart))
   365                     hookargs['node'] = hex(cl.node(clstart))
   366                     hookargs['node_last'] = hex(cl.node(clend - 1))
   366                     hookargs['node_last'] = hex(cl.node(clend - 1))
   367                 repo.hook('pretxnchangegroup',
   367                 repo.hook('pretxnchangegroup',
   368                           throw=True, **pycompat.strkwargs(hookargs))
   368                           throw=True, **pycompat.strkwargs(hookargs))
   369 
   369 
   370             added = [cl.node(r) for r in xrange(clstart, clend)]
   370             added = [cl.node(r) for r in pycompat.xrange(clstart, clend)]
   371             phaseall = None
   371             phaseall = None
   372             if srctype in ('push', 'serve'):
   372             if srctype in ('push', 'serve'):
   373                 # Old servers can not push the boundary themselves.
   373                 # Old servers can not push the boundary themselves.
   374                 # New servers won't push the boundary if changeset already
   374                 # New servers won't push the boundary if changeset already
   375                 # exists locally as secret
   375                 # exists locally as secret
   566         # build deltas
   566         # build deltas
   567         progress = None
   567         progress = None
   568         if units is not None:
   568         if units is not None:
   569             progress = self._repo.ui.makeprogress(_('bundling'), unit=units,
   569             progress = self._repo.ui.makeprogress(_('bundling'), unit=units,
   570                                                   total=(len(revs) - 1))
   570                                                   total=(len(revs) - 1))
   571         for r in xrange(len(revs) - 1):
   571         for r in pycompat.xrange(len(revs) - 1):
   572             if progress:
   572             if progress:
   573                 progress.update(r + 1)
   573                 progress.update(r + 1)
   574             prev, curr = revs[r], revs[r + 1]
   574             prev, curr = revs[r], revs[r + 1]
   575             linknode = lookup(revlog.node(curr))
   575             linknode = lookup(revlog.node(curr))
   576             for c in self.revchunk(revlog, curr, prev, linknode):
   576             for c in self.revchunk(revlog, curr, prev, linknode):
   987         except error.CensoredBaseError as e:
   987         except error.CensoredBaseError as e:
   988             raise error.Abort(_("received delta base is censored: %s") % e)
   988             raise error.Abort(_("received delta base is censored: %s") % e)
   989         revisions += len(fl) - o
   989         revisions += len(fl) - o
   990         if f in needfiles:
   990         if f in needfiles:
   991             needs = needfiles[f]
   991             needs = needfiles[f]
   992             for new in xrange(o, len(fl)):
   992             for new in pycompat.xrange(o, len(fl)):
   993                 n = fl.node(new)
   993                 n = fl.node(new)
   994                 if n in needs:
   994                 if n in needs:
   995                     needs.remove(n)
   995                     needs.remove(n)
   996                 else:
   996                 else:
   997                     raise error.Abort(
   997                     raise error.Abort(