# HG changeset patch # User Pierre-Yves David # Date 1625763992 -7200 # Node ID 26bf0b9fe78f9411cf088ed7b213fd58aec5954a # Parent a5701ffc10e4e5cb5c2411bacdfbc75b451cf3f8 sparse: clear rules in the context of a `parentchanges` context This is the same logic as the change we did for narrow. Differential Revision: https://phab.mercurial-scm.org/D11029 diff -r a5701ffc10e4 -r 26bf0b9fe78f mercurial/sparse.py --- a/mercurial/sparse.py Thu Jul 08 18:59:55 2021 +0200 +++ b/mercurial/sparse.py Thu Jul 08 19:06:32 2021 +0200 @@ -630,7 +630,7 @@ The remaining sparse config only has profiles, if defined. The working directory is refreshed, as needed. """ - with repo.wlock(): + with repo.wlock(), repo.dirstate.parentchange(): raw = repo.vfs.tryread(b'sparse') includes, excludes, profiles = parseconfig(repo.ui, raw, b'sparse') @@ -708,7 +708,7 @@ The new config is written out and a working directory refresh is performed. """ - with repo.wlock(): + with repo.wlock(), repo.dirstate.parentchange(): raw = repo.vfs.tryread(b'sparse') oldinclude, oldexclude, oldprofiles = parseconfig( repo.ui, raw, b'sparse'