--- a/mercurial/hg.py Sat Apr 14 09:23:48 2018 -0700
+++ b/mercurial/hg.py Sat Apr 14 09:57:44 2018 -0700
@@ -157,9 +157,10 @@
# a list of (ui, repo) functions called for wire peer initialization
wirepeersetupfuncs = []
-def _peerorrepo(ui, path, create=False, presetupfuncs=None):
+def _peerorrepo(ui, path, create=False, presetupfuncs=None,
+ intents=None):
"""return a repository object for the specified path"""
- obj = _peerlookup(path).instance(ui, path, create)
+ obj = _peerlookup(path).instance(ui, path, create, intents=intents)
ui = getattr(obj, "ui", ui)
for f in presetupfuncs or []:
f(ui, obj)
@@ -172,19 +173,20 @@
f(ui, obj)
return obj
-def repository(ui, path='', create=False, presetupfuncs=None):
+def repository(ui, path='', create=False, presetupfuncs=None, intents=None):
"""return a repository object for the specified path"""
- peer = _peerorrepo(ui, path, create, presetupfuncs=presetupfuncs)
+ peer = _peerorrepo(ui, path, create, presetupfuncs=presetupfuncs,
+ intents=intents)
repo = peer.local()
if not repo:
raise error.Abort(_("repository '%s' is not local") %
(path or peer.url()))
return repo.filtered('visible')
-def peer(uiorrepo, opts, path, create=False):
+def peer(uiorrepo, opts, path, create=False, intents=None):
'''return a repository peer for the specified path'''
rui = remoteui(uiorrepo, opts)
- return _peerorrepo(rui, path, create).peer()
+ return _peerorrepo(rui, path, create, intents=intents).peer()
def defaultdest(source):
'''return default destination of clone if none is given