[yum-commits] 2 commits - yum/__init__.py yum/transactioninfo.py yum/update_md.py

James Antill james at osuosl.org
Mon Dec 17 06:07:13 UTC 2012


 yum/__init__.py        |    5 +----
 yum/transactioninfo.py |    2 ++
 yum/update_md.py       |    2 +-
 3 files changed, 4 insertions(+), 5 deletions(-)

New commits:
commit 6e56ea6a6236dde080d60f091a7854d204825bd4
Author: John Matthews <jmatthew at redhat.com>
Date:   Fri Dec 14 18:25:55 2012 -0500

     Fixes extra '</pkglist>' tags on multi-collection errata. BZ 887407.
    
     Extra '</pkglist>' tags being inserted when rendering a UpdateNotice to
    XML. Only impacts Errata/UpdateInfo objects that span more than a single
    collection.

diff --git a/yum/update_md.py b/yum/update_md.py
index 4fe802b..e71f9ef 100644
--- a/yum/update_md.py
+++ b/yum/update_md.py
@@ -371,7 +371,7 @@ class UpdateNotice(object):
                                 to_xml(pkg['version'], attrib=True),
                                 to_xml(pkg['filename']))
                 msg += """    </collection>\n"""
-                msg += """  </pkglist>\n"""
+            msg += """  </pkglist>\n"""
         msg += """</update>\n"""
         return msg
 
commit 0187af621c45155d85c90513df929e934e6773f7
Author: James Antill <james at and.org>
Date:   Wed Dec 12 12:02:07 2012 -0500

    Minor cleanup to use allowedMultipleInstalls() and add comment to tsInfo.

diff --git a/yum/__init__.py b/yum/__init__.py
index 2a82f97..abed04d 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -6031,16 +6031,13 @@ much more problems).
         # so self.rpmdb.ts should be valid.
         ts = self.rpmdb.readOnlyTS()
         (cur_kernel_v, cur_kernel_r) = misc.get_running_kernel_version_release(ts)
-        install_only_names = set(self.conf.installonlypkgs)
         found = {}
         for m in self.tsInfo.getMembers():
             if m.ts_state not in ('i', 'u'):
                 continue
             if m.reinstall:
                 continue
-
-            po_names = set([m.name] + m.po.provides_names)
-            if not po_names.intersection(install_only_names):
+            if not self.allowedMultipleInstalls(m.po):
                 continue
 
             if m.name not in found:
diff --git a/yum/transactioninfo.py b/yum/transactioninfo.py
index e7377bf..2fdd8f0 100644
--- a/yum/transactioninfo.py
+++ b/yum/transactioninfo.py
@@ -256,6 +256,8 @@ class TransactionData:
         # happens IRL.
         return txmember.ts_state in ('u', 'i') and not isinstance(txmember.po, (YumInstalledPackage, YumAvailablePackageSqlite))
 
+    # NOTE: This is a copy of Depsolve.allowedMultipleInstalls() because
+    #       we can't get to YumBase from here. Use that as the main/public API.
     def _allowedMultipleInstalls(self, po):
         """takes a packageObject, returns 1 or 0 depending on if the package 
            should/can be installed multiple times with different vers


More information about the Yum-commits mailing list