exchange: pass pushop to discovery.checkheads
Previously, we passed a bunch of parameters to discovery.checkheads, but all
of the arguments can be fetched out of pushop, which may contain a lot more
useful information for extensions now that pushop is extensible.
--- a/mercurial/discovery.py Thu Nov 12 15:26:30 2015 -0600
+++ b/mercurial/discovery.py Tue Nov 10 11:13:21 2015 -0800
@@ -255,12 +255,22 @@
return bookmarkedheads
-def checkheads(repo, remote, outgoing, remoteheads, newbranch=False, inc=False,
- newbookmarks=[]):
+def checkheads(pushop):
"""Check that a push won't add any outgoing head
raise Abort error and display ui message as needed.
"""
+
+ repo = pushop.repo.unfiltered()
+ remote = pushop.remote
+ outgoing = pushop.outgoing
+ remoteheads = pushop.remoteheads
+ newbranch = pushop.newbranch
+ inc = bool(pushop.incoming)
+
+ # internal config: bookmarks.pushing
+ newbookmarks = pushop.ui.configlist('bookmarks', 'pushing')
+
# Check for each named branch if we're creating new remote heads.
# To be a remote head after push, node must be either:
# - unknown locally
--- a/mercurial/exchange.py Thu Nov 12 15:26:30 2015 -0600
+++ b/mercurial/exchange.py Tue Nov 10 11:13:21 2015 -0800
@@ -571,13 +571,7 @@
elif ctx.troubled():
raise error.Abort(mst[ctx.troubles()[0]] % ctx)
- # internal config: bookmarks.pushing
- newbm = pushop.ui.configlist('bookmarks', 'pushing')
- discovery.checkheads(unfi, pushop.remote, outgoing,
- pushop.remoteheads,
- pushop.newbranch,
- bool(pushop.incoming),
- newbm)
+ discovery.checkheads(pushop)
return True
# List of names of steps to perform for an outgoing bundle2, order matters.