From 2995fb3f1d650533224253ddbd2cc7b00ae199ac Mon Sep 17 00:00:00 2001 From: zengweifeng Date: Mon, 7 Sep 2020 15:05:07 +0800 Subject: [PATCH] fix the bug of function check_metacpan --- advisors/check_upstream.py | 34 +++++++++++----------------------- 1 file changed, 11 insertions(+), 23 deletions(-) diff --git a/advisors/check_upstream.py b/advisors/check_upstream.py index a1bf6973..0e1b2a41 100755 --- a/advisors/check_upstream.py +++ b/advisors/check_upstream.py @@ -8,6 +8,7 @@ import json import sys import subprocess import requests +import os from urllib.parse import urljoin from datetime import datetime @@ -151,32 +152,19 @@ def check_hg(info): def check_metacpan(info): - resp = load_last_query_result(info) - if resp == "": - headers = { - 'User-Agent' : 'Mozilla/5.0 (X11; Linux x86_64)' - } - url = urljoin("https://fastapi.metacpan.org/release/", info["src_repo"]) - resp = requests.get(url, headers=headers) - resp = resp.text - + url = urljoin("https://metacpan.org/release/", info["src_repo"]) + cmd = 'curl ' + url + '| grep \'value=\"/release\' -A1 | grep -Ev \'[--]|[release]|[DEV]\'' tags = [] - result_json = json.loads(resp) - if result_json != {}: - if "version" not in result_json.keys(): - eprint("{repo} > ERROR FOUND".format(repo=info["src_repo"])) - sys.exit(1) - else: - tags.append(result_json["version"]) - else: + tag_list = os.popen(cmd).read() + tag_list = tag_list.split('\n') + for tag in tag_list: + tag = tag.lstrip() + tag = tag.rstrip() + if len(tag): + tags.append(tag) + if not len(tags): eprint("{repo} found unsorted on cpan.metacpan.org".format(repo=info["src_repo"])) sys.exit(1) - - last_query = {} - last_query["time_stamp"] = datetime.now() - last_query["raw_data"] = resp - info["last_query"] = last_query - tags = clean_tags(tags, info) return tags def check_pypi(info): -- Gitee