checkheads: clarify that we no longer touch the head unknown locally
Since
c6cb21ddf74a, heads unknown locally no longer get any post processing
from obsolescence markers. We clarify this fact by only feeding the list of
locally known new heads to the function. This simplification of the input will
help moving that post-processing earlier in the function.
--- a/mercurial/discovery.py Mon May 29 05:33:59 2017 +0200
+++ b/mercurial/discovery.py Mon May 29 05:20:09 2017 +0200
@@ -340,22 +340,21 @@
allfuturecommon.update(allmissing)
for branch, heads in sorted(headssum.iteritems()):
remoteheads, newheads, unsyncedheads = heads
- candidate_newhs = set(newheads)
# add unsynced data
if remoteheads is None:
oldhs = set()
else:
oldhs = set(remoteheads)
oldhs.update(unsyncedheads)
- candidate_newhs.update(unsyncedheads)
dhs = None # delta heads, the new heads on branch
if not repo.obsstore:
discardedheads = set()
- newhs = candidate_newhs
+ newhs = set(newheads)
else:
newhs, discardedheads = _postprocessobsolete(pushop,
allfuturecommon,
- candidate_newhs)
+ newheads)
+ newhs.update(unsyncedheads)
unsynced = sorted(h for h in unsyncedheads if h not in discardedheads)
if unsynced:
if None in unsynced: