# HG changeset patch # User Pierre-Yves David # Date 2019-11-02 14:46:47 # Node ID 6e3e3e5446ba054a287c62a791b1958f613c79eb # Parent bf176127033a2bb4b1579f03874688b675dfbe41 revlog: deprecate the _nodecache attribute (API) This attribute have been the same object for a long time. Code should directly access the nodemap in case of need. (Or the final API when this will be done). This work is part of a refactoring to unify the revlog index and the nodemap. This unification prepare the use of a persistent nodemap. Differential Revision: https://phab.mercurial-scm.org/D7318 diff --git a/mercurial/revlog.py b/mercurial/revlog.py --- a/mercurial/revlog.py +++ b/mercurial/revlog.py @@ -388,7 +388,6 @@ class revlog(object): # Mapping of partial identifiers to full nodes. self._pcache = {} # Mapping of revision integer to full node. - self._nodecache = None self._nodepos = None self._compengine = b'zlib' self._compengineopts = {} @@ -553,7 +552,7 @@ class revlog(object): _(b"index %s is corrupted") % self.indexfile ) self.index, self._chunkcache = d - self.nodemap = self._nodecache = self.index.nodemap + self.nodemap = self.index.nodemap if not self._chunkcache: self._chunkclear() # revnum -> (chain-length, sum-delta-length) @@ -632,6 +631,12 @@ class revlog(object): self.rev(node0) return self.index.nodemap + @property + def _nodecache(self): + msg = "revlog._nodecache is deprecated, use revlog.index.nodemap" + util.nouideprecwarn(msg, b'5.3', stacklevel=2) + return self.index.nodemap + def hasnode(self, node): try: self.rev(node)