Beispiel #1
0
def requirement_line(r, download_to, abs_download_to):
    if isinstance(r.link, Link):
        req = r.req if pip_version > (10, ) else r
        ir = InstallRequirement(req=req,
                                link=r.link,
                                comes_from=None,
                                markers=True,
                                editable=True)
        assert r.name, "Package name not provided for %s" % r.link
        s = '{}/{}/'.format(download_to, ir.name.lower())
        ir.source_dir = '{}/{}'.format(abs_download_to, ir.name.lower())
        ir.update_editable(obtain=False)
    else:
        assert isinstance(r.req, Requirement), r.req.__class__
        s = '%-30s' % str(r.req)
        for hash_type, hashes in r.options.get('hashes', {}).items():
            for h in hashes:
                s += ' --hash={}:{}'.format(hash_type, h)
    return s.strip()