コード例 #1
0
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
コード例 #2
0
def map_reqs2pkgs(reqs, dist):
    for r in reqs:
        r.name = pymod2pkg.module2package(r.name, dist)
    return reqs