pulkit created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  Currently we don't have a defined way in core to make some hidden revisions
  visible in filtered repo. Extensions to achieve the purpose of unhiding some
  hidden commits, wrap repoview.pinnedrevs() function.
  
  To make the above task simple and have well defined API, this patch adds a new
  attribute '_visibilityexceptions' to localrepository class which will contains
  the hidden revs which should be exception.
  
  This patch also adds API to add revs to the attribute set and get them.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D1285

AFFECTED FILES
  mercurial/localrepo.py

CHANGE DETAILS

diff --git a/mercurial/localrepo.py b/mercurial/localrepo.py
--- a/mercurial/localrepo.py
+++ b/mercurial/localrepo.py
@@ -509,6 +509,16 @@
         self._sparsesignaturecache = {}
         # Signature to cached matcher instance.
         self._sparsematchercache = {}
+        # hidden hashed which should be visible
+        self._visibilityexceptions = set()
+
+    def addvisibilityexceptions(self, exceptions):
+        """ adds hidden revs which should be visible to set of exceptions """
+        self._visibilityexceptions.update(exceptions)
+
+    def getvisibilityexceptions(self):
+        """ returns the set of hidden revs which should be visible """
+        return self._visibilityexceptions
 
     def _getvfsward(self, origfunc):
         """build a ward for self.vfs"""



To: pulkit, #hg-reviewers
Cc: mercurial-devel
_______________________________________________
Mercurial-devel mailing list
Mercurial-devel@mercurial-scm.org
https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel

Reply via email to