euscan: mangle versions the gentoo-way

Signed-off-by: Corentin Chary <corentincj@iksaif.net>
This commit is contained in:
Corentin Chary
2012-04-19 15:36:44 +02:00
parent da269b0711
commit 3da5fb5240
5 changed files with 132 additions and 15 deletions

View File

@ -72,8 +72,9 @@ def scan_directory_recursive(cp, ver, rev, url, steps, orig_url):
versions = []
for version, path in results:
if helpers.version_filtered(cp, ver, version):
for up_pv, path in results:
pv = helpers.gentoo_mangle_version(up_pv)
if helpers.version_filtered(cp, ver, pv):
continue
if not url.endswith('/') and not path.startswith('/'):
@ -82,7 +83,7 @@ def scan_directory_recursive(cp, ver, rev, url, steps, orig_url):
path = url + path
if not steps and path not in orig_url:
versions.append((path, version))
versions.append((path, pv))
if steps:
ret = scan_directory_recursive(cp, ver, rev, path, steps, orig_url)

View File

@ -52,16 +52,17 @@ def scan(cpv, url):
cp, ver, rev = portage.pkgsplit(cpv)
for node in nodes:
version = node.childNodes[0].data
if helpers.version_filtered(cp, ver, version):
up_pv = node.childNodes[0].data
pv = helpers.gentoo_mangle_version(up_pv)
if helpers.version_filtered(cp, ver, pv):
continue
url = 'http://%s/get/%s-%s.tgz' % (channel, pkg, version)
url = 'http://%s/get/%s-%s.tgz' % (channel, pkg, up_pv)
if url == orig_url:
continue
ret.append(( url, version ))
ret.append(( url, pv ))
return ret

View File

@ -39,12 +39,13 @@ def scan(cpv, url):
ret = []
for version in versions:
if helpers.version_filtered(cp, ver, version):
for up_pv in versions:
pv = helpers.gentoo_mangle_version(up_pv)
if helpers.version_filtered(cp, ver, pv):
continue
urls = client.release_urls(package, version)
urls = client.release_urls(package, up_pv)
urls = " ".join([ infos['url'] for infos in urls ])
ret.append(( urls, version ))
ret.append(( urls, pv ))
return ret

View File

@ -56,11 +56,12 @@ def scan(cpv, url):
ret = []
for version in versions:
version = version['number']
if helpers.version_filtered(cp, ver, version):
up_pv = version['number']
pv = helpers.gentoo_mangle_version(up_pv)
if helpers.version_filtered(cp, ver, pv):
continue
url = 'http://rubygems.org/gems/%s-%s.gem' % (gem, version)
ret.append(( url, version ))
url = 'http://rubygems.org/gems/%s-%s.gem' % (gem, up_pv)
ret.append(( url, pv ))
return ret