[Yum-devel] [PATCH] Get rid of uses of has_key().
Ville Skyttä
ville.skytta at iki.fi
Sun Apr 25 20:05:51 UTC 2010
---
cli.py | 2 +-
rpmUtils/transaction.py | 7 +++----
rpmUtils/updates.py | 40 ++++++++++++++++++++--------------------
yum-updatesd.py | 8 ++------
yum/__init__.py | 15 +++++----------
yum/comps.py | 21 +++++++++------------
yum/depsolve.py | 2 +-
yum/mdparser.py | 2 +-
yum/packageSack.py | 13 ++++++-------
yum/packages.py | 33 +++++++++++++--------------------
yum/pgpmsg.py | 6 ++----
yum/repos.py | 2 +-
yum/rpmsack.py | 9 +++------
yum/sqlitesack.py | 10 ++++------
yum/transactioninfo.py | 6 +++---
yum/update_md.py | 4 ++--
yum/yumRepo.py | 20 +++++++++-----------
17 files changed, 85 insertions(+), 115 deletions(-)
diff --git a/cli.py b/cli.py
index 4d5b538..4479a5e 100644
--- a/cli.py
+++ b/cli.py
@@ -345,7 +345,7 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
p = re.compile('needs (\d+)MB on the (\S+) filesystem')
disk = {}
for m in p.finditer(errstring):
- if not disk.has_key(m.group(2)):
+ if m.group(2) not in disk:
disk[m.group(2)] = int(m.group(1))
if disk[m.group(2)] < int(m.group(1)):
disk[m.group(2)] = int(m.group(1))
diff --git a/rpmUtils/transaction.py b/rpmUtils/transaction.py
index 329de69..d50e201 100644
--- a/rpmUtils/transaction.py
+++ b/rpmUtils/transaction.py
@@ -94,9 +94,8 @@ class TransactionWrapper:
self.addTsFlag(rpm.RPMTRANS_FLAG_TEST)
# FIXME GARBAGE - remove once this is reimplemented elsehwere
# KEEPING FOR API COMPLIANCE ONLY
- if conf.has_key('diskspacecheck'):
- if conf['diskspacecheck'] == 0:
- self.ts.setProbFilter(rpm.RPMPROB_FILTER_DISKSPACE)
+ if conf.get('diskspacecheck') == 0:
+ self.ts.setProbFilter(rpm.RPMPROB_FILTER_DISKSPACE)
tserrors = self.ts.run(cb.callback, '')
reserrors = []
@@ -151,7 +150,7 @@ class TransactionWrapper:
preq = 0
tup = miscutils.pkgTupleFromHeader(h)
for p in _return_all_provides(h):
- if req.has_key(p):
+ if p in req:
# Don't count a package that provides its require
s = req[p]
if len(s) > 1 or tup not in s:
diff --git a/rpmUtils/updates.py b/rpmUtils/updates.py
index 935a4ac..c231f5c 100644
--- a/rpmUtils/updates.py
+++ b/rpmUtils/updates.py
@@ -91,7 +91,7 @@ class Updates:
self._delFromDict(self.updating_dict, self.updatesdict.get(pkgtup, []), pkgtup)
self._delFromDict(self.updatesdict, self.updating_dict.get(pkgtup, []), pkgtup)
- if self.rawobsoletes.has_key(pkgtup):
+ if pkgtup in self.rawobsoletes:
if self._obsoletes_by_name:
for name, flag, version in self.rawobsoletes[pkgtup]:
self._delFromDict(self._obsoletes_by_name, [name], (flag, version, pkgtup))
@@ -111,12 +111,12 @@ class Updates:
returndict = {}
for (n, a, e, v, r) in pkglist:
- if not returndict.has_key((n, a)):
+ if (n, a) not in returndict:
returndict[(n, a)] = []
returndict[(n, a)].append((e,v,r))
if Nonelists:
- if not returndict.has_key((n, None)):
+ if (n, None) not in returndict:
returndict[(n, None)] = []
returndict[(n, None)].append((a, e, v, r))
@@ -199,7 +199,7 @@ class Updates:
returndict = {}
for new in obslist:
for old in obsdict[new]:
- if not returndict.has_key(old):
+ if old not in returndict:
returndict[old] = []
returndict[old].append(new)
@@ -221,21 +221,21 @@ class Updates:
#
obs_arches = {}
for (n, a, e, v, r) in self.rawobsoletes:
- if not obs_arches.has_key(n):
+ if n not in obs_arches:
obs_arches[n] = []
obs_arches[n].append(a)
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)):
+ if (obs_n, None) in self.installdict:
for (rpm_a, rpm_e, rpm_v, rpm_r) in self.installdict[(obs_n, None)]:
if flag in [None, 0] or \
rpmUtils.miscutils.rangeCheck((obs_n, flag, (obs_e, obs_v, obs_r)),
(obs_n, rpm_a, rpm_e, rpm_v, rpm_r)):
# make sure the obsoleting pkg is not already installed
willInstall = 1
- if self.installdict.has_key((name, None)):
+ if (name, None) in self.installdict:
for (ins_a, ins_e, ins_v, ins_r) in self.installdict[(name, None)]:
pkgver = (epoch, ver, rel)
installedver = (ins_e, ins_v, ins_r)
@@ -245,7 +245,7 @@ class Updates:
if rpm_a != arch and rpm_a in obs_arches[name]:
willInstall = 0
if willInstall:
- if not obsdict.has_key(pkgtup):
+ if pkgtup not in obsdict:
obsdict[pkgtup] = []
obsdict[pkgtup].append((obs_n, rpm_a, rpm_e, rpm_v, rpm_r))
self.obsoletes = obsdict
@@ -258,7 +258,7 @@ class Updates:
self.obsoleted_dict = {}
for new in self.obsoletes:
for old in self.obsoletes[new]:
- if not self.obsoleted_dict.has_key(old):
+ if old not in self.obsoleted_dict:
self.obsoleted_dict[old] = []
self.obsoleted_dict[old].append(new)
self.obsoleting_dict = {}
@@ -309,7 +309,7 @@ class Updates:
for (n, a) in newpkgs:
# simple ones - look for exact matches or older stuff
- if self.installdict.has_key((n, a)):
+ if (n, a) in self.installdict:
for (rpm_e, rpm_v, rpm_r) in self.installdict[(n, a)]:
try:
(e, v, r) = self.returnNewest(newpkgs[(n,a)])
@@ -362,14 +362,14 @@ class Updates:
for (n, a) in simpleupdate:
# try to be as precise as possible
if n in self.exactarchlist:
- if self.installdict.has_key((n, a)):
+ if (n, a) in self.installdict:
(rpm_e, rpm_v, rpm_r) = self.returnNewest(self.installdict[(n, a)])
- if newpkgs.has_key((n,a)):
+ if (n, a) in newpkgs:
(e, v, r) = self.returnNewest(newpkgs[(n, a)])
rc = rpmUtils.miscutils.compareEVR((e, v, r), (rpm_e, rpm_v, rpm_r))
if rc > 0:
# this is definitely an update - put it in the dict
- if not updatedict.has_key((n, a, rpm_e, rpm_v, rpm_r)):
+ if (n, a, rpm_e, rpm_v, rpm_r) not in updatedict:
updatedict[(n, a, rpm_e, rpm_v, rpm_r)] = []
updatedict[(n, a, rpm_e, rpm_v, rpm_r)].append((n, a, e, v, r))
@@ -379,12 +379,12 @@ class Updates:
# we just need to find the arch of the installed pkg so we can
# check it's (e, v, r)
(rpm_a, rpm_e, rpm_v, rpm_r) = self.installdict[(n, None)][0]
- if newpkgs.has_key((n, None)):
+ if (n, None) in newpkgs:
for (a, e, v, r) in newpkgs[(n, None)]:
rc = rpmUtils.miscutils.compareEVR((e, v, r), (rpm_e, rpm_v, rpm_r))
if rc > 0:
# this is definitely an update - put it in the dict
- if not updatedict.has_key((n, rpm_a, rpm_e, rpm_v, rpm_r)):
+ if (n, rpm_a, rpm_e, rpm_v, rpm_r) not in updatedict:
updatedict[(n, rpm_a, rpm_e, rpm_v, rpm_r)] = []
updatedict[(n, rpm_a, rpm_e, rpm_v, rpm_r)].append((n, a, e, v, r))
@@ -400,7 +400,7 @@ class Updates:
archlists = []
if self._is_multilib:
- if rpmUtils.arch.multilibArches.has_key(self.myarch):
+ if self.myarch in rpmUtils.arch.multilibArches:
biarches = [self.myarch]
else:
biarches = [self.myarch, rpmUtils.arch.arches[self.myarch]]
@@ -445,7 +445,7 @@ class Updates:
rc = rpmUtils.miscutils.compareEVR((e, v, r), (rpm_e, rpm_v, rpm_r))
if rc > 0:
# this is definitely an update - put it in the dict
- if not updatedict.has_key((n, a, rpm_e, rpm_v, rpm_r)):
+ if (n, a, rpm_e, rpm_v, rpm_r) not in updatedict:
updatedict[(n, a, rpm_e, rpm_v, rpm_r)] = []
updatedict[(n, a, rpm_e, rpm_v, rpm_r)].append((n, a, e, v, r))
else:
@@ -479,7 +479,7 @@ class Updates:
rc = rpmUtils.miscutils.compareEVR((e, v, r), (rpm_e, rpm_v, rpm_r))
if rc > 0:
# this is definitely an update - put it in the dict
- if not updatedict.has_key((n, rpm_a, rpm_e, rpm_v, rpm_r)):
+ if (n, rpm_a, rpm_e, rpm_v, rpm_r) not in updatedict:
updatedict[(n, rpm_a, rpm_e, rpm_v, rpm_r)] = []
updatedict[(n, rpm_a, rpm_e, rpm_v, rpm_r)].append((n, a, e, v, r))
@@ -493,7 +493,7 @@ class Updates:
self.updating_dict = {}
for old in self.updatesdict:
for new in self.updatesdict[old]:
- if not self.updating_dict.has_key(new):
+ if new not in self.updating_dict:
self.updating_dict[new] = []
self.updating_dict[new].append(old)
@@ -688,7 +688,7 @@ class Updates:
highdict = {}
for pkgtup in tuplelist:
(n, a, e, v, r) = pkgtup
- if not highdict.has_key((n, a)):
+ if (n, a) not in highdict:
highdict[(n, a)] = pkgtup
else:
pkgtup2 = highdict[(n, a)]
diff --git a/yum-updatesd.py b/yum-updatesd.py
index f96940c..1ce4720 100644
--- a/yum-updatesd.py
+++ b/yum-updatesd.py
@@ -118,9 +118,7 @@ class SyslogUpdateEmitter(UpdateEmitter):
"DEBUG": syslog.LOG_DEBUG }
if type(lvl) == int:
return lvl
- if level_map.has_key(lvl.upper()):
- return level_map[lvl.upper()]
- return syslog.LOG_INFO
+ return level_map.get(lvl.upper(), syslog.LOG_INFO)
def _facilityMap(self, facility):
facility_map = { "KERN": syslog.LOG_KERN,
@@ -142,9 +140,7 @@ class SyslogUpdateEmitter(UpdateEmitter):
"LOCAL7": syslog.LOG_LOCAL7,}
if type(facility) == int:
return facility
- elif facility_map.has_key(facility.upper()):
- return facility_map[facility.upper()]
- return syslog.LOG_DAEMON
+ return facility_map.get(facility.upper(), syslog.LOG_DAEMON)
class EmailUpdateEmitter(UpdateEmitter):
diff --git a/yum/__init__.py b/yum/__init__.py
index 4fee2c7..a2851bd 100644
--- a/yum/__init__.py
+++ b/yum/__init__.py
@@ -2110,10 +2110,7 @@ class YumBase(depsolve.Depsolve):
the search keys in the results. """
sql_fields = []
for f in fields:
- if RPM_TO_SQLITE.has_key(f):
- sql_fields.append(RPM_TO_SQLITE[f])
- else:
- sql_fields.append(f)
+ sql_fields.append(RPM_TO_SQLITE.get(f, f))
# yield the results in order of most terms matched first
sorted_lists = {} # count_of_matches = [(pkgobj,
@@ -2258,7 +2255,7 @@ class YumBase(depsolve.Depsolve):
for (po, matched_strings) in match_gen:
if callback:
callback(po, matched_strings)
- if not matches.has_key(po):
+ if po not in matches:
matches[po] = []
matches[po].extend(matched_strings)
@@ -2550,7 +2547,7 @@ class YumBase(depsolve.Depsolve):
pkgs = packagesNewestByName(pkgs)
- if not self.tsInfo.conditionals.has_key(cond):
+ if cond not in self.tsInfo.conditionals:
self.tsInfo.conditionals[cond] = []
self.tsInfo.conditionals[cond].extend(pkgs)
return txmbrs_used
@@ -2994,7 +2991,7 @@ class YumBase(depsolve.Depsolve):
pkgbyname = {}
for pkg in pkgs:
- if not pkgbyname.has_key(pkg.name):
+ if pkg.name not in pkgbyname:
pkgbyname[pkg.name] = [ pkg ]
else:
pkgbyname[pkg.name].append(pkg)
@@ -4363,9 +4360,7 @@ class YumBase(depsolve.Depsolve):
newrepo = yumRepo.YumRepository(repoid)
newrepo.name = repoid
newrepo.basecachedir = self.conf.cachedir
- var_convert = True
- if kwargs.has_key('variable_convert') and not kwargs['variable_convert']:
- var_convert = False
+ var_convert = kwargs.get('variable_convert', True)
if baseurls:
replaced = []
diff --git a/yum/comps.py b/yum/comps.py
index bbc1ac9..bf070fa 100755
--- a/yum/comps.py
+++ b/yum/comps.py
@@ -32,10 +32,7 @@ from misc import get_my_lang_code
lang_attr = '{http://www.w3.org/XML/1998/namespace}lang'
def parse_boolean(strng):
- if BOOLEAN_STATES.has_key(strng.lower()):
- return BOOLEAN_STATES[strng.lower()]
- else:
- return False
+ return BOOLEAN_STATES.get(strng.lower(), False)
def parse_number(strng):
return int(strng)
@@ -235,11 +232,11 @@ class Group(CompsObj):
# name and description translations
for lang in obj.translated_name:
- if not self.translated_name.has_key(lang):
+ if lang not in self.translated_name:
self.translated_name[lang] = obj.translated_name[lang]
for lang in obj.translated_description:
- if not self.translated_description.has_key(lang):
+ if lang not in self.translated_description:
self.translated_description[lang] = obj.translated_description[lang]
def xml(self):
@@ -348,11 +345,11 @@ class Category(CompsObj):
# name and description translations
for lang in obj.translated_name:
- if not self.translated_name.has_key(lang):
+ if lang not in self.translated_name:
self.translated_name[lang] = obj.translated_name[lang]
for lang in obj.translated_description:
- if not self.translated_description.has_key(lang):
+ if lang not in self.translated_description:
self.translated_description[lang] = obj.translated_description[lang]
def xml(self):
@@ -424,7 +421,7 @@ class Comps(object):
for item in group_pattern.split(','):
item = item.strip()
- if self._groups.has_key(item):
+ if item in self._groups:
thisgroup = self._groups[item]
returns[thisgroup.groupid] = thisgroup
continue
@@ -490,14 +487,14 @@ class Comps(object):
return returns.values()
def add_group(self, group):
- if self._groups.has_key(group.groupid):
+ if group.groupid in self._groups:
thatgroup = self._groups[group.groupid]
thatgroup.add(group)
else:
self._groups[group.groupid] = group
def add_category(self, category):
- if self._categories.has_key(category.categoryid):
+ if category.categoryid in self._categories:
thatcat = self._categories[category.categoryid]
thatcat.add(category)
else:
@@ -557,7 +554,7 @@ class Comps(object):
check_pkgs = group.optional_packages.keys() + group.default_packages.keys() + group.conditional_packages.keys()
group.installed = False
for pkgname in check_pkgs:
- if inst_pkg_names.has_key(pkgname):
+ if pkgname in inst_pkg_names:
group.installed = True
break
diff --git a/yum/depsolve.py b/yum/depsolve.py
index 910c9e1..17b2ce9 100644
--- a/yum/depsolve.py
+++ b/yum/depsolve.py
@@ -895,7 +895,7 @@ class Depsolve(object):
for prov in provs:
if prov[0].startswith('rpmlib('): # ignore rpmlib() provides
continue
- if newpoprovs.has_key(prov):
+ if prov in newpoprovs:
continue
# FIXME: This is probably the best place to fix the postfix rename
# problem long term (post .21) ... see compare_providers.
diff --git a/yum/mdparser.py b/yum/mdparser.py
index 2753dad..194d5d1 100644
--- a/yum/mdparser.py
+++ b/yum/mdparser.py
@@ -132,7 +132,7 @@ class PrimaryEntry(BaseEntry):
elif name in ('checksum', 'location'):
p.update(self._prefixprops(child, name))
p[name + '_value'] = child.text
- if name == 'location' and not p.has_key("location_base"):
+ if name == 'location' and "location_base" not in p:
p["location_base"] = None
elif name == 'format':
diff --git a/yum/packageSack.py b/yum/packageSack.py
index dbe54bf..b09fee9 100644
--- a/yum/packageSack.py
+++ b/yum/packageSack.py
@@ -348,7 +348,7 @@ class PackageSackBase(object):
for po in self.returnPackages(repoid=repoid):
preq = 0
for p in _return_all_provides(po):
- if req.has_key(p):
+ if p in req:
# If this pkg provides something that is required by
# anything but itself (or another version of itself) it
# isn't an orphan.
@@ -785,13 +785,13 @@ class PackageSack(PackageSackBase):
def searchFiles(self, name):
""" Return list of packages by filename. """
self._checkIndexes(failure='build')
- if self.filenames.has_key(name):
+ if name in self.filenames:
return self.filenames[name]
else:
return []
def _addToDictAsList(self, dict, key, data):
- if not dict.has_key(key):
+ if key not in dict:
dict[key] = []
#if data not in dict[key]: - if I enable this the whole world grinds to a halt
# need a faster way of looking for the object in any particular list
@@ -928,7 +928,7 @@ class PackageSack(PackageSackBase):
ignore_case=ignore_case)
for pkg in where:
- if not highdict.has_key((pkg.name, pkg.arch)):
+ if (pkg.name, pkg.arch) not in highdict:
highdict[(pkg.name, pkg.arch)] = pkg
else:
pkg2 = highdict[(pkg.name, pkg.arch)]
@@ -956,9 +956,8 @@ class PackageSack(PackageSackBase):
ignore_case=ignore_case)
for pkg in pkgs:
- if not highdict.has_key(pkg.name):
- highdict[pkg.name] = []
- highdict[pkg.name].append(pkg)
+ if pkg.name not in highdict:
+ highdict[pkg.name] = [pkg]
else:
pkg2 = highdict[pkg.name][0]
if pkg.verGT(pkg2):
diff --git a/yum/packages.py b/yum/packages.py
index e01790c..ac45518 100644
--- a/yum/packages.py
+++ b/yum/packages.py
@@ -91,7 +91,7 @@ def buildPkgRefDict(pkgs, casematch=True):
envra = '%s:%s-%s-%s.%s' % (e, n, v, r, a)
nevra = '%s-%s:%s-%s.%s' % (n, e, v, r, a)
for item in [name, nameArch, nameVerRelArch, nameVer, nameVerRel, envra, nevra]:
- if not pkgdict.has_key(item):
+ if item not in pkgdict:
pkgdict[item] = []
pkgdict[item].append(pkg)
@@ -393,9 +393,7 @@ class RpmBase(object):
def returnPrco(self, prcotype, printable=False):
"""return list of provides, requires, conflicts or obsoletes"""
- prcos = []
- if self.prco.has_key(prcotype):
- prcos = self.prco[prcotype]
+ prcos = self.prco.get(prcotype, [])
if printable:
results = []
@@ -913,12 +911,9 @@ class YumAvailablePackage(PackageObject, RpmBase):
self.installedsize = pkgdict.size['installed']
if hasattr(pkgdict, 'location'):
- if not pkgdict.location.has_key('base'):
+ url = pkgdict.location.get('base')
+ if url == '':
url = None
- elif pkgdict.location['base'] == '':
- url = None
- else:
- url = pkgdict.location['base']
self.basepath = url
self.relativepath = pkgdict.location['href']
@@ -938,7 +933,7 @@ class YumAvailablePackage(PackageObject, RpmBase):
if hasattr(pkgdict, 'files'):
for fn in pkgdict.files:
ftype = pkgdict.files[fn]
- if not self.files.has_key(ftype):
+ if ftype not in self.files:
self.files[ftype] = []
self.files[ftype].append(fn)
@@ -946,19 +941,17 @@ class YumAvailablePackage(PackageObject, RpmBase):
for rtype in pkgdict.prco:
for rdict in pkgdict.prco[rtype]:
name = rdict['name']
- f = e = v = r = None
- if rdict.has_key('flags'): f = rdict['flags']
- if rdict.has_key('epoch'): e = rdict['epoch']
- if rdict.has_key('ver'): v = rdict['ver']
- if rdict.has_key('rel'): r = rdict['rel']
+ f = rdict.get('flags')
+ e = rdict.get('epoch')
+ v = rdict.get('ver')
+ r = rdict.get('rel')
self.prco[rtype].append((name, f, (e,v,r)))
if hasattr(pkgdict, 'changelog'):
for cdict in pkgdict.changelog:
- date = text = author = None
- if cdict.has_key('date'): date = cdict['date']
- if cdict.has_key('value'): text = cdict['value']
- if cdict.has_key('author'): author = cdict['author']
+ date = cdict.get('date')
+ text = cdict.get('value')
+ author = cdict.get('author')
self._changelog.append((date, author, text))
if hasattr(pkgdict, 'checksum'):
@@ -1297,7 +1290,7 @@ class YumHeaderPackage(YumAvailablePackage):
for (fn, mode, flag) in filetuple:
#garbage checks
if mode is None or mode == '':
- if not self.files.has_key('file'):
+ if 'file' not in self.files:
self.files['file'] = []
self.files['file'].append(fn)
continue
diff --git a/yum/pgpmsg.py b/yum/pgpmsg.py
index bd52cda..ffd275f 100644
--- a/yum/pgpmsg.py
+++ b/yum/pgpmsg.py
@@ -399,7 +399,7 @@ def map_to_str(m, vals) :
if type(vals) != types.ListType and type(vals) != types.TupleType :
vals = list((vals,))
for i in vals :
- if m.has_key(i) :
+ if i in m :
slist.append(m[i])
else :
slist.append('unknown(' + str(i) + ')')
@@ -781,9 +781,7 @@ class signature(pgp_packet) :
if sp[0] == SIG_SUB_TYPE_SGNR_USER_ID : # signer's user id
return 'signer id: ' + sp[1]
if sp[0] == SIG_SUB_TYPE_REVOKE_REASON : # reason for revocation
- reas = ''
- if revoke_reason_to_str.has_key(sp[1]) :
- reas = revoke_reason_to_str[sp[1]]
+ reas = revoke_reason_to_str.get(sp[1], '')
return 'reason for revocation: %s, %s' % (reas, sp[2])
if sp[0] == SIG_SUB_TYPE_FEATURES : # features
features = []
diff --git a/yum/repos.py b/yum/repos.py
index cd477ba..7e9c417 100644
--- a/yum/repos.py
+++ b/yum/repos.py
@@ -103,7 +103,7 @@ class RepoStorage:
self._cache_enabled_repos = None
def delete(self, repoid):
- if self.repos.has_key(repoid):
+ if repoid in self.repos:
thisrepo = self.repos[repoid]
thisrepo.close()
del self.repos[repoid]
diff --git a/yum/rpmsack.py b/yum/rpmsack.py
index 7f5b233..444e6d9 100644
--- a/yum/rpmsack.py
+++ b/yum/rpmsack.py
@@ -264,14 +264,12 @@ class RPMDBPackageSack(PackageSackBase):
if hdr['name'] == 'gpg-pubkey':
continue
pkg = self._makePackageObject(hdr, mi.instance())
- if not result.has_key(pkg.pkgid):
- result[pkg.pkgid] = pkg
+ result.setdefault(pkg.pkgid, pkg)
del mi
fileresults = self.searchFiles(name)
for pkg in fileresults:
- if not result.has_key(pkg.pkgid):
- result[pkg.pkgid] = pkg
+ result.setdefault(pkg.pkgid, pkg)
if self.auto_close:
self.ts.close()
@@ -289,8 +287,7 @@ class RPMDBPackageSack(PackageSackBase):
if hdr['name'] == 'gpg-pubkey':
continue
pkg = self._makePackageObject(hdr, mi.instance())
- if not result.has_key(pkg.pkgid):
- result[pkg.pkgid] = pkg
+ result.setdefault(pkg.pkgid, pkg)
del mi
result = result.values()
diff --git a/yum/sqlitesack.py b/yum/sqlitesack.py
index 43f60cd..7873411 100644
--- a/yum/sqlitesack.py
+++ b/yum/sqlitesack.py
@@ -259,9 +259,7 @@ class YumAvailablePackageSqlite(YumAvailablePackage, PackageObject, RpmBase):
if varname.startswith('__') and varname.endswith('__'):
raise AttributeError, varname
- dbname = varname
- if db2simplemap.has_key(varname):
- dbname = db2simplemap[varname]
+ dbname = db2simplemap.get(varname, varname)
try:
r = self._sql_MD('primary',
"SELECT %s FROM packages WHERE pkgId = ?" % dbname,
@@ -556,7 +554,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
# Because we don't want to remove a package from the database we just
# add it to the exclude list
def delPackage(self, obj):
- if not self.excludes.has_key(obj.repo):
+ if obj.repo not in self.excludes:
self.excludes[obj.repo] = {}
self.excludes[obj.repo][obj.pkgId] = 1
if (obj.repo, obj.pkgKey) in self._exclude_whitelist:
@@ -780,13 +778,13 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
return ret
def addDict(self, repo, datatype, dataobj, callback=None):
- if self.added.has_key(repo):
+ if repo in self.added:
if datatype in self.added[repo]:
return
else:
self.added[repo] = []
- if not self.excludes.has_key(repo):
+ if repo not in self.excludes:
self.excludes[repo] = {}
if dataobj is None:
diff --git a/yum/transactioninfo.py b/yum/transactioninfo.py
index 508ab65..69ff86d 100644
--- a/yum/transactioninfo.py
+++ b/yum/transactioninfo.py
@@ -130,7 +130,7 @@ class TransactionData:
if pkgtup is None:
for members in self.pkgdict.itervalues():
returnlist.extend(members)
- elif self.pkgdict.has_key(pkgtup):
+ elif pkgtup in self.pkgdict:
returnlist.extend(self.pkgdict[pkgtup])
return returnlist
@@ -275,7 +275,7 @@ class TransactionData:
else:
self._inSack.addPackage(txmember.po)
- if self.conditionals.has_key(txmember.name):
+ if txmember.name in self.conditionals:
for pkg in self.conditionals[txmember.name]:
if self.rpmdb.contains(po=pkg):
continue
@@ -307,7 +307,7 @@ class TransactionData:
def exists(self, pkgtup):
"""tells if the pkg is in the class"""
- if self.pkgdict.has_key(pkgtup):
+ if pkgtup in self.pkgdict:
if len(self.pkgdict[pkgtup]) != 0:
return 1
diff --git a/yum/update_md.py b/yum/update_md.py
index fc051b0..c6e2d37 100644
--- a/yum/update_md.py
+++ b/yum/update_md.py
@@ -73,7 +73,7 @@ class UpdateNotice(object):
def __getitem__(self, item):
""" Allows scriptable metadata access (ie: un['update_id']). """
- return self._md.has_key(item) and self._md[item] or None
+ return self._md.get(item) or None
def __setitem__(self, item, val):
self._md[item] = val
@@ -328,7 +328,7 @@ class UpdateMetadata(object):
"""
if type(nvr) in (type([]), type(())):
nvr = '-'.join(nvr)
- return self._cache.has_key(nvr) and self._cache[nvr] or None
+ return self._cache.get(nvr) or None
# The problem with the above "get_notice" is that not everyone updates
# daily. So if you are at pkg-1, pkg-2 has a security notice, and pkg-3
diff --git a/yum/yumRepo.py b/yum/yumRepo.py
index b67b897..7c3a4d7 100644
--- a/yum/yumRepo.py
+++ b/yum/yumRepo.py
@@ -78,7 +78,7 @@ class YumPackageSack(packageSack.PackageSack):
self.added = {}
def addDict(self, repo, datatype, dataobj, callback=None):
- if self.added.has_key(repo):
+ if repo in self.added:
if datatype in self.added[repo]:
return
@@ -94,14 +94,14 @@ class YumPackageSack(packageSack.PackageSack):
self._addToDictAsList(self.pkgsByID, pkgid, po)
self.addPackage(po)
- if not self.added.has_key(repo):
+ if repo not in self.added:
self.added[repo] = []
self.added[repo].append('metadata')
# indexes will need to be rebuilt
self.indexesBuilt = 0
elif datatype in ['filelists', 'otherdata']:
- if self.added.has_key(repo):
+ if repo in self.added:
if 'metadata' not in self.added[repo]:
raise Errors.RepoError, '%s md for %s imported before primary' \
% (datatype, repo.id)
@@ -110,7 +110,7 @@ class YumPackageSack(packageSack.PackageSack):
current += 1
if callback: callback.progressbar(current, total, repo)
pkgdict = dataobj[pkgid]
- if self.pkgsByID.has_key(pkgid):
+ if pkgid in self.pkgsByID:
for po in self.pkgsByID[pkgid]:
po.importFromDict(pkgdict)
@@ -134,7 +134,7 @@ class YumPackageSack(packageSack.PackageSack):
callback=callback,
)
for item in data:
- if self.added.has_key(repo):
+ if repo in self.added:
if item in self.added[repo]:
continue
@@ -1082,9 +1082,7 @@ class YumRepository(Repository, config.RepoConf):
self._check_db_version(mdtype + '_db', repoXML=repoXML)):
mdtype += '_db'
- if repoXML.repoData.has_key(mdtype):
- return (mdtype, repoXML.getData(mdtype))
- return (mdtype, None)
+ return (mdtype, repoXML.repoData.get(mdtype))
def _get_mdtype_fname(self, data, compressed=False):
(r_base, remote) = data.location
@@ -1524,9 +1522,9 @@ class YumRepository(Repository, config.RepoConf):
fname = os.path.basename(remote)
local = self.cachedir + '/' + fname
- if self.retrieved.has_key(mdtype):
- if self.retrieved[mdtype]: # got it, move along
- return local
+ if self.retrieved.get(mdtype):
+ # got it, move along
+ return local
if self.cache == 1:
if os.path.exists(local):
--
1.7.0.1
More information about the Yum-devel
mailing list