[yum] update to latest HEAD

James Antill james at fedoraproject.org
Tue Mar 25 17:52:13 UTC 2014


commit 125e9d0cda0a7aa9a6df51e5f04a275a52d3e17d
Author: James Antill <james at and.org>
Date:   Tue Mar 25 13:51:39 2014 -0400

    update to latest HEAD
    
    - Fix dumping xml for suggests/etc.

 yum-HEAD.patch |   37 ++++++++++++++++++++++++++-----------
 yum.spec       |   10 +++++++---
 2 files changed, 33 insertions(+), 14 deletions(-)
---
diff --git a/yum-HEAD.patch b/yum-HEAD.patch
index 1112a11..e64a7c5 100644
--- a/yum-HEAD.patch
+++ b/yum-HEAD.patch
@@ -196254,7 +196254,7 @@ index 4af563a..a702ac1 100644
          self.obsoletes = {} #obs[obsoletename] = [pkg1, pkg2, pkg3] 
                   #the package lists are packages that obsolete the key name
 diff --git a/yum/packages.py b/yum/packages.py
-index 5ef9951..ccac9da 100644
+index 5ef9951..69c612f 100644
 --- a/yum/packages.py
 +++ b/yum/packages.py
 @@ -38,6 +38,7 @@ import struct
@@ -196564,9 +196564,12 @@ index 5ef9951..ccac9da 100644
          msg += self._dump_files(True)
          if msg[-1] != '\n':
              msg += """\n"""
-@@ -1133,7 +1199,7 @@ class YumAvailablePackage(PackageObject, RpmBase):
+@@ -1131,9 +1197,9 @@ class YumAvailablePackage(PackageObject, RpmBase):
+     def _dump_pco(self, pcotype):
+            
          msg = ""
-         mylist = getattr(self, pcotype)
+-        mylist = getattr(self, pcotype)
++        mylist = self.returnPrco(pcotype)
          if mylist: msg = "\n    <rpm:%s>\n" % pcotype
 -        for (name, flags, (e,v,r)) in mylist:
 +        for (name, flags, (e,v,r)) in sorted(mylist):
@@ -198361,7 +198364,7 @@ index 9b265f9..74a0f3f 100644
 +
 +        self.display.verify_txmbr(self.base, txmbr, count)
 diff --git a/yum/sqlitesack.py b/yum/sqlitesack.py
-index 8a6f6f3..2da5a44 100644
+index 8a6f6f3..c11c818 100644
 --- a/yum/sqlitesack.py
 +++ b/yum/sqlitesack.py
 @@ -69,7 +69,7 @@ def _parse_pkg_n(match, regexp_match, n):
@@ -198414,18 +198417,30 @@ index 8a6f6f3..2da5a44 100644
                  filetype = _share_data(filetypes.pop())
                  result.setdefault(filetype,[]).append(filename)
          self._loadedfiles = True
-@@ -382,6 +387,10 @@ class YumAvailablePackageSqlite(YumAvailablePackage, PackageObject, RpmBase):
+@@ -382,7 +387,21 @@ class YumAvailablePackageSqlite(YumAvailablePackage, PackageObject, RpmBase):
  
      def returnPrco(self, prcotype, printable=False):
          prcotype = _share_data(prcotype)
+-        if isinstance(self.prco[prcotype], tuple):
 +        if prcotype == 'strong_requires':
 +            # pkg not installed so we don't know require flags yet
 +            # returning all requires should work in most cases
 +            prcotype = 'requires'
-         if isinstance(self.prco[prcotype], tuple):
++
++        # Check for the new weak deps. tables...
++        sql_table_exists = True
++        if prcotype in ('suggests', 'enhances', 'recommends', 'supplements'):
++            cur = self._sql_MD('primary', "PRAGMA index_info(%s)" % prcotype)
++            for ob in cur:
++                break
++            else:
++                sql_table_exists = False
++
++        if sql_table_exists and isinstance(self.prco[prcotype], tuple):
              sql = "SELECT name, version, release, epoch, flags " \
                    "FROM %s WHERE pkgKey = ?" % prcotype
-@@ -406,7 +415,7 @@ class YumAvailablePackageSqlite(YumAvailablePackage, PackageObject, RpmBase):
+             cur = self._sql_MD('primary', sql, (self.pkgKey,))
+@@ -406,7 +425,7 @@ class YumAvailablePackageSqlite(YumAvailablePackage, PackageObject, RpmBase):
          requires = []
          for ob in cur:
              pre = "0"
@@ -198434,7 +198449,7 @@ index 8a6f6f3..2da5a44 100644
                  pre = "1"
              prco_set = (_share_data(ob['name']), _share_data(ob['flags']),
                          (_share_data(ob['epoch']),
-@@ -917,8 +926,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
+@@ -917,8 +936,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
  
          # ultra simple optimization 
          if misc.re_primary_filename(name):
@@ -198444,7 +198459,7 @@ index 8a6f6f3..2da5a44 100644
          
          if len(self.filelistsdb) == 0:
              # grab repo object from primarydb and force filelists population in this sack using repo
-@@ -1560,7 +1568,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
+@@ -1560,7 +1578,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
              patterns = tmp
          return (need_full, patterns, fields, False)
  
@@ -198453,7 +198468,7 @@ index 8a6f6f3..2da5a44 100644
      def _yieldSQLDataList(self, repoid, patterns, fields, ignore_case):
          """Yields all the package data for the given params. Excludes are done
             at this stage. """
-@@ -1593,6 +1601,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
+@@ -1593,6 +1611,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
                  for x in cur:
                      yield (repo, x)
  
@@ -198461,7 +198476,7 @@ index 8a6f6f3..2da5a44 100644
      def _buildPkgObjList(self, repoid=None, patterns=None, ignore_case=False):
          """Builds a list of packages, only containing nevra information.
             Excludes are done at this stage. """
-@@ -1666,6 +1675,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
+@@ -1666,6 +1685,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
  
          return returnList
  
diff --git a/yum.spec b/yum.spec
index 0b8835e..ee54ddc 100644
--- a/yum.spec
+++ b/yum.spec
@@ -64,7 +64,7 @@ BuildRequires: bash-completion
 Summary: RPM package installer/updater/manager
 Name: yum
 Version: 3.4.3
-Release: 143%{?dist}
+Release: 144%{?dist}
 License: GPLv2+
 Group: System Environment/Base
 Source0: http://yum.baseurl.org/download/3.4/%{name}-%{version}.tar.gz
@@ -507,12 +507,16 @@ exit 0
 %endif
 
 %changelog
-* Mon Mar 25 2014 James Antill <james at fedoraproject.org> - 3.4.3-143
+* Tue Mar 25 2014 James Antill <james at fedoraproject.org> - 3.4.3-144
+- update to latest HEAD
+- Fix dumping xml for suggests/etc.
+
+* Mon Mar 24 2014 James Antill <james at fedoraproject.org> - 3.4.3-143
 - update to latest HEAD
 - Fix storing objects directly in the yumdb.
 - Don't store uuid as var_uuid, or we create it all the time.
 
-* Mon Mar 25 2014 James Antill <james at fedoraproject.org> - 3.4.3-142
+* Mon Mar 24 2014 James Antill <james at fedoraproject.org> - 3.4.3-142
 - update to latest HEAD
 - No error for refilter cleanup, rm dirs. and eat all errors. BZ 1062959.
 - Use get_uuid_obj() instead of get_uuid(), to help out ostree.


More information about the scm-commits mailing list