mercurial/bundlerepo.py
changeset 50199 21f876895dfe
parent 50198 a6a8946d5173
child 50200 197204dba8a2
equal deleted inserted replaced
50198:a6a8946d5173 50199:21f876895dfe
   325         else:
   325         else:
   326             raise error.Abort(
   326             raise error.Abort(
   327                 _(b'bundle type %s cannot be read') % type(bundle)
   327                 _(b'bundle type %s cannot be read') % type(bundle)
   328             )
   328             )
   329 
   329 
       
   330     def _handle_bundle1(self, bundle, bundlepath):
       
   331         if bundle.compressed():
       
   332             f = self._writetempbundle(bundle.read, b'.hg10un', header=b'HG10UN')
       
   333             bundle = exchange.readbundle(self.ui, f, bundlepath, self.vfs)
       
   334 
       
   335         self._bundlefile = bundle
       
   336         self._cgunpacker = bundle
       
   337 
   330         self.firstnewrev = self.changelog.repotiprev + 1
   338         self.firstnewrev = self.changelog.repotiprev + 1
   331         phases.retractboundary(
   339         phases.retractboundary(
   332             self,
   340             self,
   333             None,
   341             None,
   334             phases.draft,
   342             phases.draft,
   335             [ctx.node() for ctx in self[self.firstnewrev :]],
   343             [ctx.node() for ctx in self[self.firstnewrev :]],
   336         )
   344         )
   337 
       
   338     def _handle_bundle1(self, bundle, bundlepath):
       
   339         if bundle.compressed():
       
   340             f = self._writetempbundle(bundle.read, b'.hg10un', header=b'HG10UN')
       
   341             bundle = exchange.readbundle(self.ui, f, bundlepath, self.vfs)
       
   342 
       
   343         self._bundlefile = bundle
       
   344         self._cgunpacker = bundle
       
   345 
   345 
   346     def _handle_bundle2_cg_part(self, bundle, part):
   346     def _handle_bundle2_cg_part(self, bundle, part):
   347         assert part.type == b'changegroup'
   347         assert part.type == b'changegroup'
   348         cgstream = part
   348         cgstream = part
   349         version = part.params.get(b'version', b'01')
   349         version = part.params.get(b'version', b'01')
   353             raise error.Abort(msg % version)
   353             raise error.Abort(msg % version)
   354         if bundle.compressed():
   354         if bundle.compressed():
   355             cgstream = self._writetempbundle(part.read, b'.cg%sun' % version)
   355             cgstream = self._writetempbundle(part.read, b'.cg%sun' % version)
   356 
   356 
   357         self._cgunpacker = changegroup.getunbundler(version, cgstream, b'UN')
   357         self._cgunpacker = changegroup.getunbundler(version, cgstream, b'UN')
       
   358 
       
   359         self.firstnewrev = self.changelog.repotiprev + 1
       
   360         phases.retractboundary(
       
   361             self,
       
   362             None,
       
   363             phases.draft,
       
   364             [ctx.node() for ctx in self[self.firstnewrev :]],
       
   365         )
   358 
   366 
   359     def _writetempbundle(self, readfn, suffix, header=b''):
   367     def _writetempbundle(self, readfn, suffix, header=b''):
   360         """Write a temporary file to disk"""
   368         """Write a temporary file to disk"""
   361         fdtemp, temp = self.vfs.mkstemp(prefix=b"hg-bundle-", suffix=suffix)
   369         fdtemp, temp = self.vfs.mkstemp(prefix=b"hg-bundle-", suffix=suffix)
   362         self.tempfile = temp
   370         self.tempfile = temp