mercurial/phases.py
changeset 51585 c11d21faa73c
parent 51583 22cc679a7312
child 51690 493034cc3265
--- a/mercurial/phases.py	Fri Apr 05 14:13:47 2024 +0200
+++ b/mercurial/phases.py	Fri Apr 05 22:47:44 2024 +0200
@@ -414,6 +414,27 @@
             ]
         )
 
+    def get_raw_set(
+        self,
+        repo: "localrepo.localrepository",
+        phase: int,
+    ) -> Set[int]:
+        """return the set of revision in that phase
+
+        The returned set is not filtered and might contains revision filtered
+        for the passed repoview.
+
+        The returned set might be the internal one and MUST NOT be mutated to
+        avoid side effect.
+        """
+        if phase == public:
+            raise error.ProgrammingError("cannot get_set for public phase")
+        self._ensure_phase_sets(repo.unfiltered())
+        revs = self._phasesets.get(phase)
+        if revs is None:
+            return set()
+        return revs
+
     def getrevset(
         self,
         repo: "localrepo.localrepository",