Comments
Patch
@@ -557,3 +557,20 @@
return updatestandinsbymatch(repo, match)
else:
return match
+
+def getstatuswriter(ui, repo, forcibly=None):
+ '''Return the function to write largefiles specific status out
+
+ If ``forcibly`` is ``None``, this returns the last element of
+ ``repo._lfupdatereporters`` as "default" writer function.
+
+ Otherwise, this returns the function to always write out (or
+ ignore if ``not forcibly``) status.
+ '''
+ if forcibly is None:
+ return repo._lfstatuswriters[-1]
+ else:
+ if forcibly:
+ return ui.status # forcibly WRITE OUT
+ else:
+ return lambda *msg, **opts: None # forcibly IGNORE
@@ -343,6 +343,11 @@
# only last element ("_lfcommithooks[-1]") is used for each committing.
repo._lfcommithooks = [lfutil.updatestandinsbymatch]
+ # Stack of status writer functions taking "*msg, **opts" arguments
+ # like "ui.status()". Only last element ("_lfupdatereporters[-1]")
+ # is used to write status out.
+ repo._lfstatuswriters = [ui.status]
+
def prepushoutgoinghook(local, remote, outgoing):
if outgoing.missing:
toupload = set()