# HG changeset patch # User Pierre-Yves David # Date 1677727007 -3600 # Node ID 2fbc109fd58a44475ad5fa5fea66a6ae74e93e4b # Parent 57133107ab4da43888160548e29437a13c246239 narrow: read pending file when applicable Now that this is part of the transaction, this is necessary to make sure we read the right data in hooks (if any). diff -r 57133107ab4d -r 2fbc109fd58a mercurial/narrowspec.py --- a/mercurial/narrowspec.py Tue Feb 28 11:44:52 2023 -0500 +++ b/mercurial/narrowspec.py Thu Mar 02 04:16:47 2023 +0100 @@ -16,6 +16,7 @@ mergestate as mergestatemod, scmutil, sparse, + txnutil, util, ) @@ -169,7 +170,13 @@ def load(repo): # Treat "narrowspec does not exist" the same as "narrowspec file exists # and is empty". - spec = repo.svfs.tryread(FILENAME) + spec = None + if txnutil.mayhavepending(repo.root): + pending_path = b"%s.pending" % FILENAME + if repo.svfs.exists(pending_path): + spec = repo.svfs.tryread(FILENAME) + if spec is None: + spec = repo.svfs.tryread(FILENAME) return parseconfig(repo.ui, spec)