[yum-commits] Branch 'yum-3_2_X' - 2 commits - yum/__init__.py yum/rpmsack.py

James Antill james at osuosl.org
Fri May 1 20:44:58 UTC 2009


 yum/__init__.py |   15 ++++++++-------
 yum/rpmsack.py  |    5 ++++-
 2 files changed, 12 insertions(+), 8 deletions(-)

New commits:
commit 88a89c661c3856b38f7f01c79622a2d5411c9ca0
Author: James Antill <james at and.org>
Date:   Fri May 1 16:41:43 2009 -0400

    Do skip-broken before we run postresolve callback, etc.

diff --git a/yum/__init__.py b/yum/__init__.py
index dc80da2..4ab674d 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -716,14 +716,7 @@ class YumBase(depsolve.Depsolve):
 
         (rescode, restring) = self.resolveDeps()
         self._limit_installonly_pkgs()
-        self.plugins.run('postresolve', rescode=rescode, restring=restring)
         
-        if self.tsInfo.changed:
-            (rescode, restring) = self.resolveDeps(rescode == 1)
-        if self.tsInfo.pkgSack is not None: # rm Transactions don't have pkgSack
-            self.tsInfo.pkgSack.dropCachedData()
-        self.rpmdb.dropCachedData()
-
         #  We _must_ get rid of all the used tses before we go on, so that C-c
         # works for downloads / mirror failover etc.
         self.rpmdb.ts = None
@@ -738,6 +731,14 @@ class YumBase(depsolve.Depsolve):
             self._printTransaction()        
             self.verbose_logger.debug('Skip-Broken time: %0.3f' % (time.time() - sb_st))
 
+        self.plugins.run('postresolve', rescode=rescode, restring=restring)
+
+        if self.tsInfo.changed:
+            (rescode, restring) = self.resolveDeps(rescode == 1)
+        if self.tsInfo.pkgSack is not None: # rm Transactions don't have pkgSack
+            self.tsInfo.pkgSack.dropCachedData()
+        self.rpmdb.dropCachedData()
+
         self.verbose_logger.debug('Depsolve time: %0.3f' % (time.time() - ds_st))
         return rescode, restring
 
commit b566a375c5becc0f714a5075728b52eacdc98209
Author: James Antill <james at and.org>
Date:   Fri May 1 16:36:11 2009 -0400

    Don't fail removal, if a pkg has no yumdb data

diff --git a/yum/rpmsack.py b/yum/rpmsack.py
index ccef1f0..5189b18 100644
--- a/yum/rpmsack.py
+++ b/yum/rpmsack.py
@@ -789,7 +789,10 @@ class RPMDBAdditionalDataPackage(object):
         # purge out everything
         for item in self:
             self._delete(item)
-        os.rmdir(self._mydir)
+        try:
+            os.rmdir(self._mydir)
+        except OSError:
+            pass
 
 #    def __dir__(self): # for 2.6 and beyond, apparently
 #        return list(self.__iter__()) + self.__dict__.keys()


More information about the Yum-commits mailing list