[Updated] D9576: upgrade: move `printoptimisations() to UpgradeOperation class

pulkit (Pulkit Goyal) phabricator at mercurial-scm.org
Tue Jan 5 15:50:24 UTC 2021


Closed by commit rHG9ab2ab5bf9af: upgrade: move `printoptimisations() to UpgradeOperation class (authored by pulkit).
This revision was automatically updated to reflect the committed changes.

REPOSITORY
  rHG Mercurial

CHANGES SINCE LAST UPDATE
  https://phab.mercurial-scm.org/D9576?vs=24200&id=24604

CHANGES SINCE LAST ACTION
  https://phab.mercurial-scm.org/D9576/new/

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

AFFECTED FILES
  mercurial/upgrade.py
  mercurial/upgrade_utils/actions.py

CHANGE DETAILS

diff --git a/mercurial/upgrade_utils/actions.py b/mercurial/upgrade_utils/actions.py
--- a/mercurial/upgrade_utils/actions.py
+++ b/mercurial/upgrade_utils/actions.py
@@ -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))
diff --git a/mercurial/upgrade.py b/mercurial/upgrade.py
--- a/mercurial/upgrade.py
+++ b/mercurial/upgrade.py
@@ -150,19 +150,6 @@
             ui.write((b'\n'))
         ui.write(b'\n')
 
-    def printoptimisations():
-        optimisations = [
-            a for a in actions if a.type == upgrade_actions.OPTIMISATION
-        ]
-        optimisations.sort(key=lambda a: a.name)
-        if optimisations:
-            ui.write(_(b'optimisations: '))
-            write_labeled(
-                [a.name for a in optimisations],
-                "upgrade-repo.optimisation.performed",
-            )
-            ui.write(b'\n\n')
-
     upgrade_op = upgrade_actions.UpgradeOperation(
         ui,
         newreqs,
@@ -219,7 +206,7 @@
         )
 
         printrequirements()
-        printoptimisations()
+        upgrade_op.print_optimisations()
         upgrade_op.print_upgrade_actions()
         upgrade_op.print_affected_revlogs()
 
@@ -239,7 +226,7 @@
     # Else we're in the run=true case.
     ui.write(_(b'upgrade will perform the following actions:\n\n'))
     printrequirements()
-    printoptimisations()
+    upgrade_op.print_optimisations()
     upgrade_op.print_upgrade_actions()
     upgrade_op.print_affected_revlogs()
 



To: pulkit, #hg-reviewers, marmoute, mharbison72
Cc: mercurial-patches
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mercurial-scm.org/pipermail/mercurial-patches/attachments/20210105/c4d03118/attachment-0002.html>


More information about the Mercurial-patches mailing list