def reqquery(reqs, release, dist=None, module2pkg=True, verbose=False): info = rdoinfo.get_default_inforepo() distrepos = info.get_distrepos(release=release, dist=dist) r = [] for rls, dist, repos in distrepos: packages = [] for req in reqs: if module2pkg: pkg_name = pymod2pkg.module2package(req.name, dist) else: pkg_name = req.name vers = query.query_repos(repos, pkg_name, verbose=verbose) repo, nvr, v = None, None, None if vers: repo, nvr = vers[0] v = specfile.nvr2version(nvr) pkg = { 'package': pkg_name, 'version_required': req.vers or None, 'version_available': v, 'nvr_available': nvr, 'repo_available': repo, } if module2pkg: pkg['module'] = req.name packages.append(pkg) vers = { 'release': rls, 'dist': dist, 'packages': packages } r.append(vers) return r
def map_reqs2pkgs(reqs, dist): for r in reqs: r.name = pymod2pkg.module2package(r.name, dist) return reqs