def main():
user = os.environ.get('GH_USER') or USER
logging.info("tracking stars for user {}".format(user))
logging.info("If this is not your username, change it in the python file")
user = Github(os.environ.get('GH_TOKEN') or TOKEN or get_token()).get_user(USER)
for repo in user.get_starred():
repo_ = {
'name': repo.full_name,
'description': repo.description,
'releases': list(),
}
logging.info("getting {}".format(repo.full_name))
for release in repo.get_releases():
release_date = parse_date(release.raw_data['published_at'])
if NOW - release_date < dt.timedelta(days=DAYS):
repo_['releases'].append(release.raw_data)
else:
break # TODO XXX we assume, that those releases are ordered
for tag in repo.get_tags():
sha = tag.raw_data['commit']['sha']
commit = repo.get_commit(sha)
tag_date = parse_date(commit.raw_data['commit']['author']['date'])
if (NOW - tag_date < dt.timedelta(days=DAYS)):
if tag.name not in [r['name'] for r in repo_['releases']]:
tag.raw_data['tag_name'] = ''
tag.raw_data['published_at'] = commit.raw_data['commit']['author']['date']
repo_['releases'].append(tag.raw_data)
else:
break
if repo_['releases']:
print(format_repo(repo_))
评论列表
文章目录