diff -r e57d4b868a3e -r ac1c75188440 mercurial/bundlerepo.py --- a/mercurial/bundlerepo.py Wed Feb 21 13:05:23 2024 +0100 +++ b/mercurial/bundlerepo.py Wed Feb 21 13:05:29 2024 +0100 @@ -269,9 +269,10 @@ def _write(self, fp): raise NotImplementedError - def _updateroots(self, repo, phase, newroots, tr): + def _updateroots(self, repo, phase, newroots, tr, invalidate=True): self._phaseroots[phase] = newroots - self.invalidate() + if invalidate: + self.invalidate() self.dirty = True