##// END OF EJS Templates
largefile: explain why no monkey patching on a repoview...
Pierre-Yves David -
r23635:faec11cf default
parent child Browse files
Show More
@@ -1122,8 +1122,15 b' def scmutiladdremove(orig, repo, matcher'
1122 # Calling purge with --all will cause the largefiles to be deleted.
1122 # Calling purge with --all will cause the largefiles to be deleted.
1123 # Override repo.status to prevent this from happening.
1123 # Override repo.status to prevent this from happening.
1124 def overridepurge(orig, ui, repo, *dirs, **opts):
1124 def overridepurge(orig, ui, repo, *dirs, **opts):
1125 # XXX large file status is buggy when used on repo proxy.
1125 # XXX Monkey patching a repoview will not work. The assigned attribute will
1126 # XXX this needs to be investigate.
1126 # be set on the unfiltered repo, but we will only lookup attributes in the
1127 # unfiltered repo if the lookup in the repoview object itself fails. As the
1128 # monkey patched method exists on the repoview class the lookup will not
1129 # fail. As a result, the original version will shadow the monkey patched
1130 # one, defeating the monkey patch.
1131 #
1132 # As a work around we use an unfiltered repo here. We should do something
1133 # cleaner instead.
1127 repo = repo.unfiltered()
1134 repo = repo.unfiltered()
1128 oldstatus = repo.status
1135 oldstatus = repo.status
1129 def overridestatus(node1='.', node2=None, match=None, ignored=False,
1136 def overridestatus(node1='.', node2=None, match=None, ignored=False,
General Comments 0
You need to be logged in to leave comments. Login now