mercurial/upgrade_utils/actions.py
changeset 46190 9ab2ab5bf9af
parent 46189 dfddcbb0c244
child 46191 aba979b1b90b
--- a/mercurial/upgrade_utils/actions.py	Sat Dec 12 17:54:59 2020 +0530
+++ b/mercurial/upgrade_utils/actions.py	Sat Dec 12 18:00:18 2020 +0530
@@ -564,6 +564,28 @@
         self._actions_names = set([a.name for a in actions])
         self.revlogs_to_process = revlogs_to_process
 
+    def _write_labeled(self, l, label):
+        """
+        Utility function to aid writing of a list under one label
+        """
+        first = True
+        for r in sorted(l):
+            if not first:
+                self.ui.write(b', ')
+            self.ui.write(r, label=label)
+            first = False
+
+    def print_optimisations(self):
+        optimisations = [a for a in self.actions if a.type == OPTIMISATION]
+        optimisations.sort(key=lambda a: a.name)
+        if optimisations:
+            self.ui.write(_(b'optimisations: '))
+            self._write_labeled(
+                [a.name for a in optimisations],
+                "upgrade-repo.optimisation.performed",
+            )
+            self.ui.write(b'\n\n')
+
     def print_upgrade_actions(self):
         for a in self.actions:
             self.ui.status(b'%s\n   %s\n\n' % (a.name, a.upgrademessage))