[yum-cvs] cli.py output.py rpmUtils/updates.py shell.py yum/comps.py yum/__init__.py yum/mdparser.py yum/packageSack.py yum/packages.py yum/rpmsack.py yum/sqlitesack.py yum/yumRepo.py
James Antill
james at linux.duke.edu
Fri Dec 21 16:12:13 UTC 2007
cli.py | 12 ++++++------
output.py | 22 +++++++++++-----------
rpmUtils/updates.py | 27 +++++++++++++--------------
shell.py | 2 +-
yum/__init__.py | 34 +++++++++++++++++-----------------
yum/comps.py | 22 +++++++++++-----------
yum/mdparser.py | 2 +-
yum/packageSack.py | 6 +++---
yum/packages.py | 6 +++---
yum/rpmsack.py | 2 +-
yum/sqlitesack.py | 2 +-
yum/yumRepo.py | 9 ++++-----
12 files changed, 72 insertions(+), 74 deletions(-)
New commits:
commit 91e4b9cd5ff71296e2eced1b0343531828aae589
Author: James Antill <james at and.org>
Date: Fri Dec 21 11:07:36 2007 -0500
Change:
if mydict.keys(): => if mydict:
for x in mydict.keys() => for x in mydict: # If no del mydict in there
len(mydict.keys()) => len(mydict)
mylist.extend(mydict.keys()) => mylist.extend(mydict)
if x in mydict.keys() => if x in mydict:
...to stop creating temporary lists.
diff --git a/cli.py b/cli.py
index 07d14f7..6a9385b 100644
--- a/cli.py
+++ b/cli.py
@@ -251,9 +251,9 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
if disk[m.group(2)] < int(m.group(1)):
disk[m.group(2)] = int(m.group(1))
- if disk.keys():
+ if disk:
summary += 'Disk Requirements:\n'
- for k in disk.keys():
+ for k in disk:
summary += ' At least %dMB needed on the %s filesystem.\n' % (disk[k], k)
# TODO: simplify the dependency errors?
@@ -335,10 +335,10 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
'Downloading Packages:')
problems = self.downloadPkgs(downloadpkgs)
- if len(problems.keys()) > 0:
+ if len(problems) > 0:
errstring = ''
errstring += 'Error Downloading Packages:\n'
- for key in problems.keys():
+ for key in problems:
errors = yum.misc.unique(problems[key])
for error in errors:
errstring += ' %s: %s\n' % (key, error)
@@ -562,7 +562,7 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
# this is where I could catch the installs of compat and multilib
# arches on a single yum install command.
pkglist = []
- for name in toBeInstalled.keys():
+ for name in toBeInstalled:
pkglist.extend(self.bestPackagesFromList(toBeInstalled[name]))
# This is where we need to do a lookup to find out if this install
@@ -816,7 +816,7 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
matching = self.searchPackageProvides(args, callback=self.matchcallback)
- if len(matching.keys()) == 0:
+ if len(matching) == 0:
return 0, ['No Matches found']
return 0, []
diff --git a/output.py b/output.py
index f7edc73..8f81873 100644
--- a/output.py
+++ b/output.py
@@ -148,7 +148,7 @@ class YumTerm:
self.lines = curses.tigetnum('lines')
# Look up string capabilities.
- for cap_name in self.MODE.keys():
+ for cap_name in self.MODE:
mode = cap_name
if cap_name in self.__cap_names:
cap_name = self.__cap_names[cap_name]
@@ -332,22 +332,22 @@ class YumOutput:
print '\nGroup: %s' % group.name
if group.description != "":
print ' Description: %s' % group.description.encode("UTF-8")
- if len(group.mandatory_packages.keys()) > 0:
+ if len(group.mandatory_packages) > 0:
print ' Mandatory Packages:'
- for item in group.mandatory_packages.keys():
+ for item in group.mandatory_packages:
print ' %s' % item
- if len(group.default_packages.keys()) > 0:
+ if len(group.default_packages) > 0:
print ' Default Packages:'
- for item in group.default_packages.keys():
+ for item in group.default_packages:
print ' %s' % item
- if len(group.optional_packages.keys()) > 0:
+ if len(group.optional_packages) > 0:
print ' Optional Packages:'
- for item in group.optional_packages.keys():
+ for item in group.optional_packages:
print ' %s' % item
- if len(group.conditional_packages.keys()) > 0:
+ if len(group.conditional_packages) > 0:
print ' Conditional Packages:'
for item, cond in group.conditional_packages.iteritems():
print ' %s' % (item,)
@@ -355,13 +355,13 @@ class YumOutput:
def depListOutput(self, results):
"""take a list of findDeps results and 'pretty print' the output"""
- for pkg in results.keys():
+ for pkg in results:
print "package: %s" % pkg.compactPrint()
- if len(results[pkg].keys()) == 0:
+ if len(results[pkg]) == 0:
print " No dependencies for this package"
continue
- for req in results[pkg].keys():
+ for req in results[pkg]:
reqlist = results[pkg][req]
print " dependency: %s" % prco_tuple_to_string(req)
if not reqlist:
diff --git a/rpmUtils/updates.py b/rpmUtils/updates.py
index 967e698..b5ccc72 100644
--- a/rpmUtils/updates.py
+++ b/rpmUtils/updates.py
@@ -125,7 +125,7 @@ class Updates:
def condenseUpdates(self):
"""remove any accidental duplicates in updates"""
- for tup in self.updatesdict.keys():
+ for tup in self.updatesdict:
if len(self.updatesdict[tup]) > 1:
mylist = self.updatesdict[tup]
self.updatesdict[tup] = rpmUtils.miscutils.unique(mylist)
@@ -179,12 +179,12 @@ class Updates:
# if you find it look for the packages they obsolete
#
obs_arches = {}
- for (n, a, e, v, r) in self.rawobsoletes.keys():
+ for (n, a, e, v, r) in self.rawobsoletes:
if not obs_arches.has_key(n):
obs_arches[n] = []
obs_arches[n].append(a)
- for pkgtup in self.rawobsoletes.keys():
+ for pkgtup in self.rawobsoletes:
(name, arch, epoch, ver, rel) = pkgtup
for (obs_n, flag, (obs_e, obs_v, obs_r)) in self.rawobsoletes[(pkgtup)]:
if self.installdict.has_key((obs_n, None)):
@@ -215,7 +215,7 @@ class Updates:
is to make it easier to look up what package obsoletes what item in
the rpmdb"""
self.obsoleted_dict = {}
- for new in self.obsoletes.keys():
+ for new in self.obsoletes:
for old in self.obsoletes[new]:
if not self.obsoleted_dict.has_key(old):
self.obsoleted_dict[old] = []
@@ -270,7 +270,7 @@ class Updates:
# remove the older stuff - if we're doing an update we only want the
# newest evrs
- for (n, a) in newpkgs.keys():
+ for (n, a) in newpkgs:
if a is None:
continue
@@ -280,7 +280,7 @@ class Updates:
newpkgs[(n, a)].remove((e, v, r))
- for (n, a) in newpkgs.keys():
+ for (n, a) in newpkgs:
if a is None: # the None archs are only for lookups
continue
@@ -307,7 +307,7 @@ class Updates:
# ok at this point our newpkgs list should be thinned, we should have only
# the newest e,v,r's and only archs we can actually use
- for (n, a) in newpkgs.keys():
+ for (n, a) in newpkgs:
if a is None: # the None archs are only for lookups
continue
@@ -424,9 +424,9 @@ class Updates:
# is more than one arch updating with the highest ver
instarchs = []
availarchs = []
- for (n,a) in hipdict.keys():
+ for (n,a) in hipdict:
instarchs.append(a)
- for (n,a) in hapdict.keys():
+ for (n,a) in hapdict:
availarchs.append(a)
rpm_a = rpmUtils.arch.getBestArchFromList(instarchs, myarch=self.myarch)
@@ -452,7 +452,7 @@ class Updates:
is to make it easier to look up what package will be updating what
in the rpmdb"""
self.updating_dict = {}
- for old in self.updatesdict.keys():
+ for old in self.updatesdict:
for new in self.updatesdict[old]:
if not self.updating_dict.has_key(new):
self.updating_dict[new] = []
@@ -482,8 +482,7 @@ class Updates:
"""returns updates for packages in a list of tuples of:
(updating naevr, installed naevr)"""
returnlist = []
- for oldtup in self.updatesdict.keys():
- (old_n, old_a, old_e, old_v, old_r) = oldtup
+ for oldtup in self.updatesdict:
for newtup in self.updatesdict[oldtup]:
returnlist.append((newtup, oldtup))
@@ -509,7 +508,7 @@ class Updates:
"""returns updating packages in a list of (naevr) tuples"""
returnlist = []
- for oldtup in self.updatesdict.keys():
+ for oldtup in self.updatesdict:
for newtup in self.updatesdict[oldtup]:
returnlist.append(newtup)
@@ -569,7 +568,7 @@ class Updates:
def getObsoletedList(self, newest=0, name=None):
"""returns a list of pkgtuples obsoleting the package in name"""
returnlist = []
- for new in self.obsoletes.keys():
+ for new in self.obsoletes:
for obstup in self.obsoletes[new]:
(n, a, e, v, r) = obstup
if n == name:
diff --git a/shell.py b/shell.py
index b2aab23..b21c402 100644
--- a/shell.py
+++ b/shell.py
@@ -105,7 +105,7 @@ class YumShell(cmd.Cmd):
def completenames(self, text, line, begidx, endidx):
ret = cmd.Cmd.completenames(self, text, line, begidx, endidx)
- for command in self.base.yum_cli_commands.keys():
+ for command in self.base.yum_cli_commands:
if command.startswith(text) and command != "shell":
ret.append(command)
return ret
diff --git a/yum/__init__.py b/yum/__init__.py
index 8ff038d..5bd6fa0 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -557,7 +557,7 @@ class YumBase(depsolve.Depsolve):
# first or the below does nothing so...
if self.pkgSack:
for repo in self.repos.listEnabled():
- if repo in repo.sack.added.keys():
+ if repo in repo.sack.added:
if 'filelists' in repo.sack.added[repo]:
continue
else:
@@ -625,12 +625,12 @@ class YumBase(depsolve.Depsolve):
''' create a dictionary with po -> deps and dep -> pos references '''
depTree = {}
for txmbr in self.tsInfo:
- if not txmbr.po in depTree.keys():
+ if not txmbr.po in depTree:
depTree[txmbr.po] = set()
- for po in (txmbr.updates + txmbr.obsoletes+txmbr.depends_on):
+ for po in (txmbr.updates + txmbr.obsoletes + txmbr.depends_on):
# Add po -> dep reference
depTree[txmbr.po].add(po)
- if not po in depTree.keys():
+ if not po in depTree:
depTree[po] = set()
# Add dep -> reference
depTree[po].add(txmbr.po)
@@ -682,7 +682,7 @@ class YumBase(depsolve.Depsolve):
for r in self.repos.listEnabled():
costs[r.cost] = 1
- if len(costs.keys()) <= 1: # if all of our costs are the same then return
+ if len(costs) <= 1: # if all of our costs are the same then return
return
def _sort_by_cost(a, b):
@@ -1283,7 +1283,7 @@ class YumBase(depsolve.Depsolve):
else:
ftimehash[ftime].append(po)
- for sometime in ftimehash.keys():
+ for sometime in ftimehash:
for po in ftimehash[sometime]:
recent.append(po)
@@ -1393,14 +1393,14 @@ class YumBase(depsolve.Depsolve):
matched_values[po] = tmpvalues
my_sets[s].append(po)
- for pkg in matched_values.keys():
+ for pkg in matched_values:
if scores.has_key(pkg):
continue
count = 0
- for this_set in my_sets.values():
+ for this_set in my_sets.itervalues():
if pkg in this_set:
- count+=1
+ count += 1
scores[pkg] = count
@@ -1637,11 +1637,11 @@ class YumBase(depsolve.Depsolve):
pkgs = []
if 'mandatory' in self.conf.group_package_types:
- pkgs.extend(thisgroup.mandatory_packages.keys())
+ pkgs.extend(thisgroup.mandatory_packages)
if 'default' in self.conf.group_package_types:
- pkgs.extend(thisgroup.default_packages.keys())
+ pkgs.extend(thisgroup.default_packages)
if 'optional' in self.conf.group_package_types:
- pkgs.extend(thisgroup.optional_packages.keys())
+ pkgs.extend(thisgroup.optional_packages)
for pkg in pkgs:
self.verbose_logger.log(logginglevels.DEBUG_2,
@@ -1945,7 +1945,7 @@ class YumBase(depsolve.Depsolve):
raise Errors.InstallError, 'Package Object was not a package object instance'
else:
- if not kwargs.keys():
+ if not kwargs:
raise Errors.InstallError, 'Nothing specified to install'
if kwargs.has_key('pattern'):
@@ -2060,7 +2060,7 @@ class YumBase(depsolve.Depsolve):
obsoletes = []
tx_return = []
- if not po and not kwargs.keys(): # update everything (the easy case)
+ if not po and not kwargs: # update everything (the easy case)
self.verbose_logger.log(logginglevels.DEBUG_2, 'Updating Everything')
for (obsoleting, installed) in obsoletes:
obsoleting_pkg = self.getPackageObject(obsoleting)
@@ -2169,7 +2169,7 @@ class YumBase(depsolve.Depsolve):
will be marked for removal.
if no po then look at kwargs, if neither then raise an exception"""
- if not po and not kwargs.keys():
+ if not po and not kwargs:
raise Errors.RemoveError, 'Nothing specified to remove'
tx_return = []
@@ -2490,9 +2490,9 @@ class YumBase(depsolve.Depsolve):
except IndexError:
raise Errors.YumBaseError, ["Unable to find a suitable mirror."]
- if len(probs.keys()) > 0:
+ if len(probs) > 0:
errstr = ["Errors were encountered while downloading packages."]
- for key in probs.keys():
+ for key in probs:
errors = misc.unique(probs[key])
for error in errors:
errstr.append("%s: %s" %(key, error))
diff --git a/yum/comps.py b/yum/comps.py
index 054c733..3441469 100755
--- a/yum/comps.py
+++ b/yum/comps.py
@@ -62,6 +62,7 @@ class Group(object):
return self.name
def _packageiter(self):
+ # Gah, FIXME: real iterator/class
lst = self.mandatory_packages.keys() + \
self.optional_packages.keys() + \
self.default_packages.keys() + \
@@ -164,13 +165,13 @@ class Group(object):
# we only need package lists and any translation that we don't already
# have
- for pkg in obj.mandatory_packages.keys():
+ for pkg in obj.mandatory_packages:
self.mandatory_packages[pkg] = 1
- for pkg in obj.default_packages.keys():
+ for pkg in obj.default_packages:
self.default_packages[pkg] = 1
- for pkg in obj.optional_packages.keys():
+ for pkg in obj.optional_packages:
self.optional_packages[pkg] = 1
- for pkg in obj.conditional_packages.keys():
+ for pkg in obj.conditional_packages:
self.conditional_packages[pkg] = obj.conditional_packages[pkg]
# Handle cases where a comps.xml without name & decription tags
@@ -184,11 +185,11 @@ class Group(object):
self.description = obj.description
# name and description translations
- for lang in obj.translated_name.keys():
+ for lang in obj.translated_name:
if not self.translated_name.has_key(lang):
self.translated_name[lang] = obj.translated_name[lang]
- for lang in obj.translated_description.keys():
+ for lang in obj.translated_description:
if not self.translated_description.has_key(lang):
self.translated_description[lang] = obj.translated_description[lang]
@@ -266,11 +267,11 @@ class Category(object):
self._groups[grp] = 1
# name and description translations
- for lang in obj.translated_name.keys():
+ for lang in obj.translated_name:
if not self.translated_name.has_key(lang):
self.translated_name[lang] = obj.translated_name[lang]
- for lang in obj.translated_description.keys():
+ for lang in obj.translated_description:
if not self.translated_description.has_key(lang):
self.translated_description[lang] = obj.translated_description[lang]
@@ -383,10 +384,9 @@ class Comps(object):
# if there are mandatory packages in the group, then make sure
# they're all installed. if any are missing, then the group
# isn't installed.
- if len(group.mandatory_packages.keys()) > 0:
- check_pkgs = group.mandatory_packages.keys()
+ if len(group.mandatory_packages) > 0:
group.installed = True
- for pkgname in check_pkgs:
+ for pkgname in group.mandatory_packages:
if not inst_pkg_names.has_key(pkgname):
group.installed = False
break
diff --git a/yum/mdparser.py b/yum/mdparser.py
index 47ec21a..e668744 100644
--- a/yum/mdparser.py
+++ b/yum/mdparser.py
@@ -96,7 +96,7 @@ class BaseEntry:
def _prefixprops(self, elem, prefix):
ret = {}
- for key in elem.attrib.keys():
+ for key in elem.attrib:
ret[prefix + '_' + self._bn(key)] = elem.attrib[key]
return ret
diff --git a/yum/packageSack.py b/yum/packageSack.py
index d2b2d4b..b5d3aa8 100644
--- a/yum/packageSack.py
+++ b/yum/packageSack.py
@@ -441,7 +441,7 @@ class PackageSack(PackageSackBase):
def __len__(self):
ret = 0
- for repo in self.pkgsByRepo.keys():
+ for repo in self.pkgsByRepo:
ret += len(self.pkgsByRepo[repo])
return ret
@@ -620,7 +620,7 @@ class PackageSack(PackageSackBase):
self.clearIndexes()
- for repoid in self.pkgsByRepo.keys():
+ for repoid in self.pkgsByRepo:
for obj in self.pkgsByRepo[repoid]:
self._addPackageToIndex(obj)
self.indexesBuilt = 1
@@ -684,7 +684,7 @@ class PackageSack(PackageSackBase):
"""return list of all packages, takes optional repoid"""
returnList = []
if repoid is None:
- for repo in self.pkgsByRepo.keys():
+ for repo in self.pkgsByRepo:
returnList.extend(self.pkgsByRepo[repo])
else:
try:
diff --git a/yum/packages.py b/yum/packages.py
index 86a7d3e..504c0e1 100644
--- a/yum/packages.py
+++ b/yum/packages.py
@@ -586,14 +586,14 @@ class YumAvailablePackage(PackageObject, RpmBase):
self.licenses.append(pkgdict.info['license'])
if hasattr(pkgdict, 'files'):
- for fn in pkgdict.files.keys():
+ for fn in pkgdict.files:
ftype = pkgdict.files[fn]
if not self.files.has_key(ftype):
self.files[ftype] = []
self.files[ftype].append(fn)
if hasattr(pkgdict, 'prco'):
- for rtype in pkgdict.prco.keys():
+ for rtype in pkgdict.prco:
for rdict in pkgdict.prco[rtype]:
name = rdict['name']
f = e = v = r = None
@@ -671,7 +671,7 @@ class YumHeaderPackage(YumAvailablePackage):
"CONFLICT": "conflicts",
"REQUIRE": "requires",
"PROVIDE": "provides" }
- for tag in tag2prco.keys():
+ for tag in tag2prco:
name = self.hdr[getattr(rpm, 'RPMTAG_%sNAME' % tag)]
lst = self.hdr[getattr(rpm, 'RPMTAG_%sFLAGS' % tag)]
diff --git a/yum/rpmsack.py b/yum/rpmsack.py
index ad2cfd3..9e049c6 100644
--- a/yum/rpmsack.py
+++ b/yum/rpmsack.py
@@ -62,7 +62,7 @@ class RPMDBPackageSack(PackageSackBase):
'''Getter for the pkglist property.
Returns a list of package tuples.
'''
- if len(self._header_dict.keys()) == 0 :
+ if len(self._header_dict) == 0 :
self._make_header_dict()
return self._header_dict.keys()
diff --git a/yum/sqlitesack.py b/yum/sqlitesack.py
index ed75d94..d5e2b0a 100644
--- a/yum/sqlitesack.py
+++ b/yum/sqlitesack.py
@@ -354,7 +354,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
name = name[:-1]
pkgs = []
- if len(self.filelistsdb.keys()) == 0:
+ if len(self.filelistsdb) == 0:
# grab repo object from primarydb and force filelists population in this sack using repo
# sack.populate(repo, mdtype, callback, cacheonly)
for (repo,cache) in self.primarydb.items():
diff --git a/yum/yumRepo.py b/yum/yumRepo.py
index 42b2fde..e78f7fc 100644
--- a/yum/yumRepo.py
+++ b/yum/yumRepo.py
@@ -60,10 +60,10 @@ class YumPackageSack(packageSack.PackageSack):
if datatype in self.added[repo]:
return
- total = len(dataobj.keys())
+ total = len(dataobj)
if datatype == 'metadata':
current = 0
- for pkgid in dataobj.keys():
+ for pkgid in dataobj:
current += 1
if callback: callback.progressbar(current, total, repo)
pkgdict = dataobj[pkgid]
@@ -84,7 +84,7 @@ class YumPackageSack(packageSack.PackageSack):
raise Errors.RepoError, '%s md for %s imported before primary' \
% (datatype, repo.id)
current = 0
- for pkgid in dataobj.keys():
+ for pkgid in dataobj:
current += 1
if callback: callback.progressbar(current, total, repo)
pkgdict = dataobj[pkgid]
@@ -390,8 +390,7 @@ class YumRepository(Repository, config.RepoConf):
"""Convert our dict of headers to a list of 2-tuples for urlgrabber."""
headers = []
- keys = self.http_headers.keys()
- for key in keys:
+ for key in self.http_headers:
headers.append((key, self.http_headers[key]))
return headers
More information about the Yum-cvs-commits
mailing list