obsutil: move the 'marker' class to the new modules
authorPierre-Yves David <pierre-yves.david@octobus.net>
Tue, 27 Jun 2017 01:51:40 +0200
changeset 33148 4e30168d7939
parent 33147 07439e9f245b
child 33149 a14e2e7f7d1f
obsutil: move the 'marker' class to the new modules We have a new 'obsutil' module now. We move high level utility there to bring 'obsolete.py' back to a more reasonable size.
mercurial/debugcommands.py
mercurial/obsolete.py
mercurial/obsutil.py
--- a/mercurial/debugcommands.py	Tue Jun 27 01:48:41 2017 +0200
+++ b/mercurial/debugcommands.py	Tue Jun 27 01:51:40 2017 +0200
@@ -307,7 +307,7 @@
         ui.write(msg)
         fm = ui.formatter('debugobsolete', opts)
         for rawmarker in sorted(markers):
-            m = obsolete.marker(None, rawmarker)
+            m = obsutil.marker(None, rawmarker)
             fm.startitem()
             fm.plain(indent_string)
             cmdutil.showmarker(fm, m)
--- a/mercurial/obsolete.py	Tue Jun 27 01:48:41 2017 +0200
+++ b/mercurial/obsolete.py	Tue Jun 27 01:51:40 2017 +0200
@@ -465,48 +465,6 @@
     for marker in markers:
         yield encodeone(marker)
 
-
-class marker(object):
-    """Wrap obsolete marker raw data"""
-
-    def __init__(self, repo, data):
-        # the repo argument will be used to create changectx in later version
-        self._repo = repo
-        self._data = data
-        self._decodedmeta = None
-
-    def __hash__(self):
-        return hash(self._data)
-
-    def __eq__(self, other):
-        if type(other) != type(self):
-            return False
-        return self._data == other._data
-
-    def precnode(self):
-        """Precursor changeset node identifier"""
-        return self._data[0]
-
-    def succnodes(self):
-        """List of successor changesets node identifiers"""
-        return self._data[1]
-
-    def parentnodes(self):
-        """Parents of the precursors (None if not recorded)"""
-        return self._data[5]
-
-    def metadata(self):
-        """Decoded metadata dictionary"""
-        return dict(self._data[3])
-
-    def date(self):
-        """Creation date as (unixtime, offset)"""
-        return self._data[4]
-
-    def flags(self):
-        """The flags field of the marker"""
-        return self._data[2]
-
 @util.nogc
 def _addsuccessors(successors, markers):
     for mark in markers:
@@ -851,7 +809,7 @@
         rawmarkers = repo.obsstore.relevantmarkers(nodes)
 
     for markerdata in rawmarkers:
-        yield marker(repo, markerdata)
+        yield obsutil.marker(repo, markerdata)
 
 # keep compatibility for the 4.3 cycle
 def allprecursors(obsstore, nodes, ignoreflags=0):
@@ -864,6 +822,11 @@
     util.nouideprecwarn(movemsg, '4.3')
     return obsutil.allsuccessors(obsstore, nodes, ignoreflags)
 
+def marker(repo, data):
+    movemsg = 'obsolete.marker moved to obsutil.marker'
+    repo.ui.deprecwarn(movemsg, '4.3')
+    return obsutil.marker(repo, data)
+
 def exclusivemarkers(repo, nodes):
     movemsg = 'obsolete.exclusivemarkers moved to obsutil.exclusivemarkers'
     repo.ui.deprecwarn(movemsg, '4.3')
--- a/mercurial/obsutil.py	Tue Jun 27 01:48:41 2017 +0200
+++ b/mercurial/obsutil.py	Tue Jun 27 01:51:40 2017 +0200
@@ -7,6 +7,47 @@
 
 from __future__ import absolute_import
 
+class marker(object):
+    """Wrap obsolete marker raw data"""
+
+    def __init__(self, repo, data):
+        # the repo argument will be used to create changectx in later version
+        self._repo = repo
+        self._data = data
+        self._decodedmeta = None
+
+    def __hash__(self):
+        return hash(self._data)
+
+    def __eq__(self, other):
+        if type(other) != type(self):
+            return False
+        return self._data == other._data
+
+    def precnode(self):
+        """Precursor changeset node identifier"""
+        return self._data[0]
+
+    def succnodes(self):
+        """List of successor changesets node identifiers"""
+        return self._data[1]
+
+    def parentnodes(self):
+        """Parents of the precursors (None if not recorded)"""
+        return self._data[5]
+
+    def metadata(self):
+        """Decoded metadata dictionary"""
+        return dict(self._data[3])
+
+    def date(self):
+        """Creation date as (unixtime, offset)"""
+        return self._data[4]
+
+    def flags(self):
+        """The flags field of the marker"""
+        return self._data[2]
+
 def closestpredecessors(repo, nodeid):
     """yield the list of next predecessors pointing on visible changectx nodes