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
--- 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)
--- 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
--- 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: