Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/manifest.py @ 30308:bce79dfcf5e4
manifest: get rid of manifest.readshallowfast
This removes manifest.readshallowfast and converts it's one user to use
manifestlog instead.
author | Durham Goode <durham@fb.com> |
---|---|
date | Wed, 02 Nov 2016 17:10:47 -0700 |
parents | 78f3c7166f0d |
children | f65faa4422c8 |
comparison
equal
deleted
inserted
replaced
30307:78f3c7166f0d | 30308:bce79dfcf5e4 |
---|---|
1349 rl._fulltextcache[self._node] = arraytext | 1349 rl._fulltextcache[self._node] = arraytext |
1350 self._data = manifestdict(text) | 1350 self._data = manifestdict(text) |
1351 return self._data | 1351 return self._data |
1352 | 1352 |
1353 def readfast(self, shallow=False): | 1353 def readfast(self, shallow=False): |
1354 '''Calls either readdelta or read, based on which would be less work. | |
1355 readdelta is called if the delta is against the p1, and therefore can be | |
1356 read quickly. | |
1357 | |
1358 If `shallow` is True, nothing changes since this is a flat manifest. | |
1359 ''' | |
1354 rl = self._repo.manifestlog._revlog | 1360 rl = self._repo.manifestlog._revlog |
1355 r = rl.rev(self._node) | 1361 r = rl.rev(self._node) |
1356 deltaparent = rl.deltaparent(r) | 1362 deltaparent = rl.deltaparent(r) |
1357 if deltaparent != revlog.nullrev and deltaparent in rl.parentrevs(r): | 1363 if deltaparent != revlog.nullrev and deltaparent in rl.parentrevs(r): |
1358 return self.readdelta() | 1364 return self.readdelta() |
1438 if fl1: | 1444 if fl1: |
1439 md.setflag(f, fl1) | 1445 md.setflag(f, fl1) |
1440 return md | 1446 return md |
1441 | 1447 |
1442 def readfast(self, shallow=False): | 1448 def readfast(self, shallow=False): |
1449 '''Calls either readdelta or read, based on which would be less work. | |
1450 readdelta is called if the delta is against the p1, and therefore can be | |
1451 read quickly. | |
1452 | |
1453 If `shallow` is True, it only returns the entries from this manifest, | |
1454 and not any submanifests. | |
1455 ''' | |
1443 rl = self._revlog() | 1456 rl = self._revlog() |
1444 r = rl.rev(self._node) | 1457 r = rl.rev(self._node) |
1445 deltaparent = rl.deltaparent(r) | 1458 deltaparent = rl.deltaparent(r) |
1446 if (deltaparent != revlog.nullrev and | 1459 if (deltaparent != revlog.nullrev and |
1447 deltaparent in rl.parentrevs(r)): | 1460 deltaparent in rl.parentrevs(r)): |
1520 _("readshallowdelta() not implemented for manifestv2")) | 1533 _("readshallowdelta() not implemented for manifestv2")) |
1521 r = self.rev(node) | 1534 r = self.rev(node) |
1522 d = mdiff.patchtext(self.revdiff(self.deltaparent(r), r)) | 1535 d = mdiff.patchtext(self.revdiff(self.deltaparent(r), r)) |
1523 return manifestdict(d) | 1536 return manifestdict(d) |
1524 | 1537 |
1525 def readshallowfast(self, node): | |
1526 '''like readfast(), but calls readshallowdelta() instead of readdelta() | |
1527 ''' | |
1528 r = self.rev(node) | |
1529 deltaparent = self.deltaparent(r) | |
1530 if deltaparent != revlog.nullrev and deltaparent in self.parentrevs(r): | |
1531 return self.readshallowdelta(node) | |
1532 return self.readshallow(node) | |
1533 | |
1534 def read(self, node): | 1538 def read(self, node): |
1535 if node == revlog.nullid: | 1539 if node == revlog.nullid: |
1536 return self._newmanifest() # don't upset local cache | 1540 return self._newmanifest() # don't upset local cache |
1537 if node in self._mancache: | 1541 if node in self._mancache: |
1538 cached = self._mancache[node] | 1542 cached = self._mancache[node] |
1556 self._mancache[node] = m | 1560 self._mancache[node] = m |
1557 if arraytext is not None: | 1561 if arraytext is not None: |
1558 self.fulltextcache[node] = arraytext | 1562 self.fulltextcache[node] = arraytext |
1559 return m | 1563 return m |
1560 | 1564 |
1561 def readshallow(self, node): | |
1562 '''Reads the manifest in this directory. When using flat manifests, | |
1563 this manifest will generally have files in subdirectories in it. Does | |
1564 not cache the manifest as the callers generally do not read the same | |
1565 version twice.''' | |
1566 return manifestdict(self.revision(node)) | |
1567 | |
1568 def find(self, node, f): | 1565 def find(self, node, f): |
1569 '''look up entry for a single file efficiently. | 1566 '''look up entry for a single file efficiently. |
1570 return (node, flags) pair if found, (None, None) if not.''' | 1567 return (node, flags) pair if found, (None, None) if not.''' |
1571 m = self.read(node) | 1568 m = self.read(node) |
1572 try: | 1569 try: |