tests/simplestorerepo.py
changeset 41158 ad51e6117095
parent 41157 c4639fdae1b9
child 42724 2177133724ab
equal deleted inserted replaced
41157:c4639fdae1b9 41158:ad51e6117095
    21     nullid,
    21     nullid,
    22     nullrev,
    22     nullrev,
    23 )
    23 )
    24 from mercurial.thirdparty import (
    24 from mercurial.thirdparty import (
    25     attr,
    25     attr,
    26     cbor,
       
    27 )
    26 )
    28 from mercurial import (
    27 from mercurial import (
    29     ancestor,
    28     ancestor,
    30     bundlerepo,
    29     bundlerepo,
    31     error,
    30     error,
    37     revlog,
    36     revlog,
    38     store,
    37     store,
    39     verify,
    38     verify,
    40 )
    39 )
    41 from mercurial.utils import (
    40 from mercurial.utils import (
       
    41     cborutil,
    42     interfaceutil,
    42     interfaceutil,
    43     storageutil,
    43     storageutil,
    44 )
    44 )
    45 
    45 
    46 # Note for extension authors: ONLY specify testedwith = 'ships-with-hg-core' for
    46 # Note for extension authors: ONLY specify testedwith = 'ships-with-hg-core' for
   104         self._storepath = b'/'.join([b'data', path])
   104         self._storepath = b'/'.join([b'data', path])
   105         self._indexpath = b'/'.join([self._storepath, b'index'])
   105         self._indexpath = b'/'.join([self._storepath, b'index'])
   106 
   106 
   107         indexdata = self._svfs.tryread(self._indexpath)
   107         indexdata = self._svfs.tryread(self._indexpath)
   108         if indexdata:
   108         if indexdata:
   109             indexdata = cbor.loads(indexdata)
   109             indexdata = cborutil.decodeall(indexdata)
   110 
   110 
   111         self._indexdata = indexdata or []
   111         self._indexdata = indexdata or []
   112         self._indexbynode = {}
   112         self._indexbynode = {}
   113         self._indexbyrev = {}
   113         self._indexbyrev = {}
   114         self._index = []
   114         self._index = []
   511 
   511 
   512         return node
   512         return node
   513 
   513 
   514     def _reflectindexupdate(self):
   514     def _reflectindexupdate(self):
   515         self._refreshindex()
   515         self._refreshindex()
   516         self._svfs.write(self._indexpath, cbor.dumps(self._indexdata))
   516         self._svfs.write(self._indexpath,
       
   517                          ''.join(cborutil.streamencode(self._indexdata)))
   517 
   518 
   518     def addgroup(self, deltas, linkmapper, transaction, addrevisioncb=None,
   519     def addgroup(self, deltas, linkmapper, transaction, addrevisioncb=None,
   519                  maybemissingparents=False):
   520                  maybemissingparents=False):
   520         if maybemissingparents:
   521         if maybemissingparents:
   521             raise error.Abort(_('simple store does not support missing parents '
   522             raise error.Abort(_('simple store does not support missing parents '