コード例 #1
0
def get_archive_contents_entry(tfile):

    basedir,tf = os.path.split(tfile)

    base, ext  = os.path.splitext(tf)

    splits = base.split('-')

    pkgname = '-'.join(splits[0:-1])
    ver = Version.parse(splits[-1])
    version = '({0} {1} {2})'.format(ver.major,
                                    ver.minor,
                                    ver.patch)

    with closing(tarfile.open(tfile)) as t:
        f = t.extractfile(base + '/docstring.txt')
        DOCSTRING = f.read().strip()

        f = t.extractfile(base + '/requirements.txt')
        REQUIREMENTS = f.read().strip()

        return '''({pkgname} . [{version} nil "{DOCSTRING}" tar])'''.format(**locals())
コード例 #2
0
        DOCSTRING = f.read().strip()

        f = t.extractfile(base + '/requirements.txt')
        REQUIREMENTS = f.read().strip()

        return '''({pkgname} . [{version} nil "{DOCSTRING}" tar])'''.format(**locals())

# build up a dictionary 
mostrecent = {}

for tf in tfs:
    basedir, tf = os.path.split(tf)
    base, ext = os.path.splitext(tf)
    splits = base.split('-')
    pkgname = '-'.join(splits[0:-1])
    version = Version.parse(splits[-1])

    if pkgname in mostrecent:
        if mostrecent[pkgname] < version:
            mostrecent[pkgname] = version
    else:
        mostrecent[pkgname] = version

ARCHIVE_CONTENTS = '(1\n'
    
for pkg in mostrecent:
    tfile = '{0}{1}-{2}.tar'.format(root, pkg, mostrecent[pkg])
    ARCHIVE_CONTENTS += '   ' + get_archive_contents_entry(tfile) + '\n'

ARCHIVE_CONTENTS += ')'