view paint/pypi.py @ 87:5a624b3c1007 default tip

py35
author Jeff Hammel <k0scist@gmail.com>
date Sun, 19 Feb 2017 17:50:00 -0800
parents 59524b6d25c0
children
line wrap: on
line source

"""
functions for python package indices
"""

import os
import pkginfo

def pypi_path(path):
    """
    returns subpath 2-tuple appropriate for pypi path structure:
    http://k0s.org/portfolio/pypi.html
    """
    sdist = pkginfo.sdist.SDist(path)

    # determine the extension (XXX hacky)
    extensions = ('.tar.gz', '.zip', '.tar.bz2')
    for ext in extensions:
        if sdist.filename.endswith(ext):
            break
    else:
        raise Exception("Extension %s not found: %s" % (extensions, sdist.filename))

    # get the filename destination
    filename = '%s-%s%s' % (sdist.name, sdist.version, ext)
    return sdist.name, filename