Mercurial > public > mercurial-scm > hg
comparison tests/simplestorerepo.py @ 37442:0596d27457c6
revlog: move parsemeta() and packmeta() from filelog (API)
filelog.parsemeta() and filelog.packmeta() are used to decode
and encode metadata for file copies and censor.
An upcoming commit will move the core logic for censoring revlogs
into revlog.py. This would create a cycle between revlog.py and
filelog.py. So we move these metadata functions to revlog.py.
.. api::
filelog.parsemeta() and filelog.packmeta() have been moved to
the revlog module.
Differential Revision: https://phab.mercurial-scm.org/D3150
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Thu, 05 Apr 2018 18:22:35 -0700 |
parents | a3202fa83aff |
children | 404eab7ff33f |
comparison
equal
deleted
inserted
replaced
37441:a3202fa83aff | 37442:0596d27457c6 |
---|---|
30 from mercurial import ( | 30 from mercurial import ( |
31 ancestor, | 31 ancestor, |
32 bundlerepo, | 32 bundlerepo, |
33 error, | 33 error, |
34 extensions, | 34 extensions, |
35 filelog, | |
36 localrepo, | 35 localrepo, |
37 mdiff, | 36 mdiff, |
38 pycompat, | 37 pycompat, |
39 repository, | 38 repository, |
40 revlog, | 39 revlog, |
324 | 323 |
325 if self.parents(node)[0] != nullid: | 324 if self.parents(node)[0] != nullid: |
326 return False | 325 return False |
327 | 326 |
328 fulltext = self.revision(node) | 327 fulltext = self.revision(node) |
329 m = filelog.parsemeta(fulltext)[0] | 328 m = revlog.parsemeta(fulltext)[0] |
330 | 329 |
331 if m and 'copy' in m: | 330 if m and 'copy' in m: |
332 return m['copy'], bin(m['copyrev']) | 331 return m['copy'], bin(m['copyrev']) |
333 | 332 |
334 return False | 333 return False |
413 def checksize(self): | 412 def checksize(self): |
414 return 0, 0 | 413 return 0, 0 |
415 | 414 |
416 def add(self, text, meta, transaction, linkrev, p1, p2): | 415 def add(self, text, meta, transaction, linkrev, p1, p2): |
417 if meta or text.startswith(b'\1\n'): | 416 if meta or text.startswith(b'\1\n'): |
418 text = filelog.packmeta(meta, text) | 417 text = revlog.packmeta(meta, text) |
419 | 418 |
420 return self.addrevision(text, transaction, linkrev, p1, p2) | 419 return self.addrevision(text, transaction, linkrev, p1, p2) |
421 | 420 |
422 def addrevision(self, text, transaction, linkrev, p1, p2, node=None, | 421 def addrevision(self, text, transaction, linkrev, p1, p2, node=None, |
423 flags=revlog.REVIDX_DEFAULT_FLAGS, cachedelta=None): | 422 flags=revlog.REVIDX_DEFAULT_FLAGS, cachedelta=None): |