[yum-commits] Branch 'yum-3_2_X' - 3 commits - cli.py rpmUtils/updates.py yum/__init__.py

skvidal at osuosl.org skvidal at osuosl.org
Thu Jun 24 14:05:21 UTC 2010


 cli.py              |    4 ++++
 rpmUtils/updates.py |    4 ++++
 yum/__init__.py     |    5 +++++
 3 files changed, 13 insertions(+)

New commits:
commit 75fdfbe3bd2590156f6b348e6fd45fc7a51c5d8a
Merge: ded0ff4... 7161c68...
Author: Seth Vidal <skvidal at fedoraproject.org>
Date:   Thu Jun 24 10:06:32 2010 -0400

    Merge branch 'yum-3_2_X' of ssh://yum.baseurl.org/srv/projects/yum/git/yum into yum-3_2_X
    
    * 'yum-3_2_X' of ssh://yum.baseurl.org/srv/projects/yum/git/yum:
      Show a nice error message when a user tries to access history.
      Fix make check, due to rpmdb.readOnlyTS() not being in FakeRpmDb.
      Fix the indentation on key_installed.
      Make the "installing gpg key" messages nicer, showing the owning package.
      GPG provides can have spaces: gpg(Fedora (13) <fedora at fedoraproject.org>).

commit ded0ff4f12cb160f880b1288818d461a25a2e8a3
Author: Seth Vidal <skvidal at fedoraproject.org>
Date:   Wed Jun 23 14:57:14 2010 -0400

    - multiple checks to make sure we're not trying to install a deltarpm directly
    - also make sure no bogons filter in for localinstall.

diff --git a/cli.py b/cli.py
index 2f1479b..fc4ee1c 100644
--- a/cli.py
+++ b/cli.py
@@ -863,6 +863,10 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
 
         installing = False
         for pkg in filelist:
+            if not pkg.endswith('.rpm'):
+                self.verbose_logger.log(yum.logginglevels.INFO_2,
+                   "Skipping: %s, filename does not end in .rpm.", pkg)
+                continue
             txmbrs = self.installLocal(pkg, updateonly=updateonly)
             if txmbrs:
                 installing = True
diff --git a/yum/__init__.py b/yum/__init__.py
index 9a0bc15..dc7c7ef 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -3709,6 +3709,11 @@ class YumBase(depsolve.Depsolve):
             self.verbose_logger.log(logginglevels.INFO_2,
                 _('Examining %s: %s'), po.localpath, po)
 
+        # apparently someone wanted to try to install a drpm as an rpm :(
+        if po.hdr['payloadformat'] == 'drpm':
+            self.logger.critical(_('Cannot localinstall deltarpm: %s. Skipping.'), pkg)
+            return tx_return
+
         # if by any chance we're a noncompat arch rpm - bail and throw out an error
         # FIXME -our archlist should be stored somewhere so we don't have to
         # do this: but it's not a config file sort of thing
commit 5ca3113446d6d9a1664bd07d2ae94f86fabef06a
Author: Seth Vidal <skvidal at fedoraproject.org>
Date:   Wed Jun 23 14:26:54 2010 -0400

    - make sure when we have multiple identical updating pkgs that we don't look at them as complex updates
    
    fixes part of rh bug: 607258

diff --git a/rpmUtils/updates.py b/rpmUtils/updates.py
index c231f5c..c61788b 100644
--- a/rpmUtils/updates.py
+++ b/rpmUtils/updates.py
@@ -113,11 +113,15 @@ class Updates:
         for (n, a, e, v, r) in pkglist:
             if (n, a) not in returndict:
                 returndict[(n, a)] = []
+            if (e,v,r) in returndict[(n, a)]:
+                continue
             returndict[(n, a)].append((e,v,r))
 
             if Nonelists:
                 if (n, None) not in returndict:
                     returndict[(n, None)] = []
+                if (a,e,v,r) in returndict[(n, None)]:
+                    continue
                 returndict[(n, None)].append((a, e, v, r))
             
         return returndict


More information about the Yum-commits mailing list