# HG changeset patch # User Pierre-Yves David # Date 1631694025 -7200 # Node ID d459c6b84961146ab48774711b3ce69bda572111 # Parent dd267f16042fa997d83cbe537d999f812cbb1023 dirstate: inline the last two `_drop` usage The function is small and having the associated code directly inline help use to cleanup the dirstate API. Differential Revision: https://phab.mercurial-scm.org/D11428 diff -r dd267f16042f -r d459c6b84961 hgext/largefiles/lfcommands.py --- a/hgext/largefiles/lfcommands.py Wed Sep 15 10:02:11 2021 +0200 +++ b/hgext/largefiles/lfcommands.py Wed Sep 15 10:20:25 2021 +0200 @@ -577,7 +577,7 @@ repo.wvfs.unlinkpath(lfutil.standin(f)) # This needs to happen for dropped files, otherwise they stay in # the M state. - lfdirstate._drop(f) + lfdirstate._map.dropfile(f) statuswriter(_(b'getting changed largefiles\n')) cachelfiles(ui, repo, None, lfiles) diff -r dd267f16042f -r d459c6b84961 mercurial/dirstate.py --- a/mercurial/dirstate.py Wed Sep 15 10:02:11 2021 +0200 +++ b/mercurial/dirstate.py Wed Sep 15 10:20:25 2021 +0200 @@ -560,7 +560,9 @@ possibly_dirty = True elif not (p1_tracked or wc_tracked): # the file is no longer relevant to anyone - self._drop(filename) + if self._map.dropfile(filename): + self._dirty = True + self._updatedfiles.add(filename) elif (not p1_tracked) and wc_tracked: if entry is not None and entry.added: return # avoid dropping copy information (maybe?) @@ -742,12 +744,6 @@ self._addpath(f, possibly_dirty=True) self._map.copymap.pop(f, None) - def _drop(self, filename): - """internal function to drop a file from the dirstate""" - if self._map.dropfile(filename): - self._dirty = True - self._updatedfiles.add(filename) - def _discoverpath(self, path, normed, ignoremissing, exists, storemap): if exists is None: exists = os.path.lexists(os.path.join(self._root, path)) @@ -860,7 +856,8 @@ for f in to_lookup: self._normallookup(f) for f in to_drop: - self._drop(f) + if self._map.dropfile(f): + self._updatedfiles.add(f) self._dirty = True diff -r dd267f16042f -r d459c6b84961 tests/test-rebuildstate.t --- a/tests/test-rebuildstate.t Wed Sep 15 10:02:11 2021 +0200 +++ b/tests/test-rebuildstate.t Wed Sep 15 10:20:25 2021 +0200 @@ -19,7 +19,8 @@ > if opts.get('normal_lookup'): > repo.dirstate._normallookup(file) > else: - > repo.dirstate._drop(file) + > repo.dirstate._map.dropfile(file) + > repo.dirstate._dirty = True > > repo.dirstate.write(repo.currenttransaction()) > finally: