[tor-commits] [thandy/master] Improve handling of updates to thp bundles

nickm at torproject.org nickm at torproject.org
Thu Nov 3 19:14:20 UTC 2011


commit 0efda8ed80c76b5cdd1cca3a06b857fc1eb2809e
Author: Tomás Touceda <chiiph at torproject.org>
Date:   Sat Sep 3 22:21:34 2011 -0300

    Improve handling of updates to thp bundles
    
    It only installs thp packages that aren't already installed as they should
    be.
    It also outputs READY for bundles that have at least one package in them
    that's installable under this restrictions.
---
 lib/thandy/ClientCLI.py              |   11 ++++++-----
 lib/thandy/packagesys/ThpPackages.py |    3 +++
 2 files changed, 9 insertions(+), 5 deletions(-)

diff --git a/lib/thandy/ClientCLI.py b/lib/thandy/ClientCLI.py
index f568a2c..828d853 100755
--- a/lib/thandy/ClientCLI.py
+++ b/lib/thandy/ClientCLI.py
@@ -157,13 +157,14 @@ def update(args):
             #             if i != None:
             #                 i.install()
             
-            logCtrl("READY", BUNDLE=",".join(thpTransactions.keys()))
-
             for bundle in thpTransactions:
+                tr = thandy.packagesys.ThpPackages.ThpTransaction(thpTransactions[bundle], 
+                                                                  alreadyInstalled,
+                                                                  repoRoot)
+                if tr.isReady():
+                    logCtrl("READY", BUNDLE=bundle)
                 if install:
-                    thandy.packagesys.ThpPackages.ThpTransaction(thpTransactions[bundle], 
-                                                                 alreadyInstalled,
-                                                                 repoRoot).install()
+                    tr.install()
 
             return
 
diff --git a/lib/thandy/packagesys/ThpPackages.py b/lib/thandy/packagesys/ThpPackages.py
index dd1d399..49ce19e 100755
--- a/lib/thandy/packagesys/ThpPackages.py
+++ b/lib/thandy/packagesys/ThpPackages.py
@@ -134,6 +134,9 @@ class ThpTransaction(object):
                                                      self._db,
                                                      self._repo_root))
 
+    def isReady(self):
+        return (len(self._installers) > 0)
+
     def _orderByDep(self):
         """ Orders packages with a topological order by its dependencies """
         return self._installers





More information about the tor-commits mailing list