[Yum-devel] [PATCH] Change map(lambda ... => list comprehensions
Seth Vidal
skvidal at fedoraproject.org
Mon Oct 12 14:16:30 UTC 2009
On Mon, 12 Oct 2009, James Antill wrote:
> ---
> cli.py | 4 ++--
> yum/__init__.py | 13 ++++++++-----
> yum/depsolve.py | 3 ++-
> yum/packages.py | 4 ++--
> yum/rpmsack.py | 2 +-
> yum/sqlitesack.py | 6 +++---
> yumcommands.py | 2 +-
> 7 files changed, 19 insertions(+), 15 deletions(-)
NACK: I don't think this should go in pre- 3.2.25 - it doesn't fix any
bugs and it just introduces too many places for typo errors.
>
> diff --git a/cli.py b/cli.py
> index 332be99..b6bff1c 100644
> --- a/cli.py
> +++ b/cli.py
> @@ -535,7 +535,7 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
> """ If install argument doesn't match with case, tell the user. """
> matches = self.doPackageLists(patterns=[arg], ignore_case=True)
> matches = matches.installed + matches.available
> - matches = set(map(lambda x: x.name, matches))
> + matches = set((x.name for x in matches))
> if matches:
> msg = self.fmtKeyValFill(_(' * Maybe you meant: '),
> ", ".join(matches))
> @@ -565,7 +565,7 @@ class YumBaseCli(yum.YumBase, output.YumOutput):
> _('Package(s) %s%s%s available, but not installed.'),
> hibeg, arg, hiend)
> return
> - matches = set(map(lambda x: x.name, matches.installed))
> + matches = set((x.name for x in matches.installed))
> if always_output or matches:
> self.verbose_logger.log(yum.logginglevels.INFO_2,
> _('No package %s%s%s available.'),
> diff --git a/yum/__init__.py b/yum/__init__.py
> index 6af81b8..4d2cbd0 100644
> --- a/yum/__init__.py
> +++ b/yum/__init__.py
> @@ -3042,7 +3042,7 @@ class YumBase(depsolve.Depsolve):
> ver=nevra_dict['version'], rel=nevra_dict['release'])
> if len(availpkgs) > 1:
> availpkgs = self._compare_providers(availpkgs, requiringPo)
> - availpkgs = map(lambda x: x[0], availpkgs)
> + availpkgs = [x[0] for x in availpkgs]
>
>
> # for any thing specified
> @@ -3917,7 +3917,8 @@ class YumBase(depsolve.Depsolve):
> toremove.append(po)
> numleft -= 1
>
> - map(lambda x: self.tsInfo.addErase(x), toremove)
> + for po in toremove:
> + self.tsInfo.addErase(po)
>
> def processTransaction(self, callback=None,rpmTestDisplay=None, rpmDisplay=None):
> '''
> @@ -3954,9 +3955,11 @@ class YumBase(depsolve.Depsolve):
> def _downloadPackages(self,callback):
> ''' Download the need packages in the Transaction '''
> # This can be overloaded by a subclass.
> - dlpkgs = map(lambda x: x.po, filter(lambda txmbr:
> - txmbr.ts_state in ("i", "u"),
> - self.tsInfo.getMembers()))
> + dlpkgs = []
> + # FIXME: Use getMembersWithState()
> + for txmbr in self.tsInfo.getMembers():
> + if txmbr.ts_state in ("i", "u"):
> + dlpkgs.append(txmbr.po)
> # Check if there is something to do
> if len(dlpkgs) == 0:
> return None
> diff --git a/yum/depsolve.py b/yum/depsolve.py
> index 8bed47c..6b65624 100644
> --- a/yum/depsolve.py
> +++ b/yum/depsolve.py
> @@ -591,7 +591,8 @@ class Depsolve(object):
> # before, they're not going to be installed anymore, so we
> # should mark them to be re-checked
> if upgraded.has_key(best.pkgtup):
> - map(lambda x: self.tsInfo.remove(x), upgraded[best.pkgtup])
> + for x in upgraded[best.pkgtup]:
> + self.tsInfo.remove(x)
>
> checkdeps = 1
>
> diff --git a/yum/packages.py b/yum/packages.py
> index 7bbb61d..e5e18b6 100644
> --- a/yum/packages.py
> +++ b/yum/packages.py
> @@ -1106,8 +1106,8 @@ class YumHeaderPackage(YumAvailablePackage):
>
> lst = hdr[getattr(rpm, 'RPMTAG_%sVERSION' % tag)]
> vers = map(rpmUtils.miscutils.stringToVersion, lst)
> - vers = map(lambda x: (misc.share_data(x[0]), misc.share_data(x[1]),
> - misc.share_data(x[2])), vers)
> + vers = [(misc.share_data(x[0]), misc.share_data(x[1]),
> + misc.share_data(x[2])) for x in vers]
>
> prcotype = tag2prco[tag]
> self.prco[prcotype] = map(misc.share_data, zip(name,flag,vers))
> diff --git a/yum/rpmsack.py b/yum/rpmsack.py
> index 93e14ec..8ed82d6 100644
> --- a/yum/rpmsack.py
> +++ b/yum/rpmsack.py
> @@ -400,7 +400,7 @@ class RPMDBPackageSack(PackageSackBase):
> def searchPrimaryFieldsMultipleStrings(self, fields, searchstrings,
> lowered=False):
> if not lowered:
> - searchstrings = map(lambda x: x.lower(), searchstrings)
> + searchstrings = [x.lower() for x in searchstrings]
> ret = []
> for hdr, idx in self._all_packages():
> n = self._find_search_fields(fields, searchstrings, hdr)
> diff --git a/yum/sqlitesack.py b/yum/sqlitesack.py
> index ce2988f..70d6a91 100644
> --- a/yum/sqlitesack.py
> +++ b/yum/sqlitesack.py
> @@ -358,7 +358,7 @@ class YumAvailablePackageSqlite(YumAvailablePackage, PackageObject, RpmBase):
> def simpleFiles(self, ftype='file'):
> sql = "SELECT name as fname FROM files WHERE pkgKey = ? and type = ?"
> cur = self._sql_MD('primary', sql, (self.pkgKey, ftype))
> - return map(lambda x: x['fname'], cur)
> + return [x['fname'] for x in cur]
>
> def returnPrco(self, prcotype, printable=False):
> prcotype = _share_data(prcotype)
> @@ -951,7 +951,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
> if not file_glob:
> return int(filename in files)
>
> - fns = map(lambda f: '%s/%s' % (sql_dirname, f), files)
> + fns = ['%s/%s' % (sql_dirname, f) for f in files]
> for match in fns:
> if name_re.match(match):
> return 1
> @@ -1680,7 +1680,7 @@ class YumSqlitePackageSack(yumRepo.YumPackageSack):
> self._arch_allowed = set(archlist)
> else:
> self._arch_allowed = self._arch_allowed.intersection(archlist)
> - sarchlist = map(lambda x: "'%s'" % x , archlist)
> + sarchlist = ["'%s'" % x for x in archlist]
> arch_query = ",".join(sarchlist)
>
> for (rep, cache) in self.primarydb.items():
> diff --git a/yumcommands.py b/yumcommands.py
> index 1451a36..ff7af56 100644
> --- a/yumcommands.py
> +++ b/yumcommands.py
> @@ -779,7 +779,7 @@ class RepoListCommand(YumCommand):
> extcmds = extcmds[1:]
> else:
> arg = 'enabled'
> - extcmds = map(lambda x: x.lower(), extcmds)
> + extcmds = [x.lower() for x in extcmds]
>
> verbose = base.verbose_logger.isEnabledFor(logginglevels.DEBUG_3)
> try:
> --
> 1.6.2.5
>
> _______________________________________________
> Yum-devel mailing list
> Yum-devel at lists.baseurl.org
> http://lists.baseurl.org/mailman/listinfo/yum-devel
>
More information about the Yum-devel
mailing list