D11797: dirstate: cleanup remaining of "now" during write
marmoute (Pierre-Yves David)
phabricator at mercurial-scm.org
Wed Nov 24 11:16:04 UTC 2021
marmoute created this revision.
Herald added a reviewer: hg-reviewers.
Herald added a subscriber: mercurial-patches.
REVISION SUMMARY
Since the whole `need_delay` have been removed, we no longer need this.
REPOSITORY
rHG Mercurial
BRANCH
default
REVISION DETAIL
https://phab.mercurial-scm.org/D11797
AFFECTED FILES
mercurial/dirstate.py
mercurial/dirstatemap.py
CHANGE DETAILS
diff --git a/mercurial/dirstatemap.py b/mercurial/dirstatemap.py
--- a/mercurial/dirstatemap.py
+++ b/mercurial/dirstatemap.py
@@ -444,7 +444,7 @@
self.__getitem__ = self._map.__getitem__
self.get = self._map.get
- def write(self, tr, st, now):
+ def write(self, tr, st):
if self._use_dirstate_v2:
packed, meta = v2.pack_dirstate(self._map, self.copymap)
self.write_v2_no_append(tr, st, meta, packed)
@@ -655,7 +655,7 @@
self._map
return self.identity
- def write(self, tr, st, now):
+ def write(self, tr, st):
if not self._use_dirstate_v2:
p1, p2 = self.parents()
packed = self._map.write_v1(p1, p2)
diff --git a/mercurial/dirstate.py b/mercurial/dirstate.py
--- a/mercurial/dirstate.py
+++ b/mercurial/dirstate.py
@@ -733,20 +733,11 @@
filename = self._filename
if tr:
- # 'dirstate.write()' is not only for writing in-memory
- # changes out, but also for dropping ambiguous timestamp.
- # delayed writing re-raise "ambiguous timestamp issue".
- # See also the wiki page below for detail:
- # https://www.mercurial-scm.org/wiki/DirstateTransactionPlan
-
- # record when mtime start to be ambiguous
- now = timestamp.get_fs_now(self._opener)
-
# delay writing in-memory changes out
tr.addfilegenerator(
b'dirstate',
(self._filename,),
- lambda f: self._writedirstate(tr, f, now=now),
+ lambda f: self._writedirstate(tr, f),
location=b'plain',
)
return
@@ -765,7 +756,7 @@
"""
self._plchangecallbacks[category] = callback
- def _writedirstate(self, tr, st, now=None):
+ def _writedirstate(self, tr, st):
# notify callbacks about parents change
if self._origpl is not None and self._origpl != self._pl:
for c, callback in sorted(
@@ -774,12 +765,7 @@
callback(self, self._origpl, self._pl)
self._origpl = None
- if now is None:
- # use the modification time of the newly created temporary file as the
- # filesystem's notion of 'now'
- now = timestamp.mtime_of(util.fstat(st))
-
- self._map.write(tr, st, now)
+ self._map.write(tr, st)
self._dirty = False
def _dirignore(self, f):
To: marmoute, #hg-reviewers
Cc: mercurial-patches, mercurial-devel
More information about the Mercurial-devel
mailing list