from __future__ import print_function
import sys
import getpass
import datetime
from github import Github
from github_issues import GithubIssuesBase, GithubIssues
print("Enter github username:")
username = sys.stdin.readline().strip()
print()
password = getpass.getpass('Enter github password: ')
gh = Github(login_or_token=username,
password=password, user_agent='PyGithub/Python')
repo = gh.get_repo('avocado-framework/avocado-vt')
start = gh.rate_limiting
issues = GithubIssues(gh, 'avocado-framework/avocado-vt')
print("Issue #125: ", end=' ')
print(issues[125])
end = gh.rate_limiting
print("Requests used: ", start[0] - end[0])
print("Cache hits: %s misses: %s" % (issues.cache_hits, issues.cache_misses))
issues = GithubIssues(gh, 'avocado-framework/avocado-vt')
start = end
print("Pull #526: ", end=' ')
print(issues[526])
end = gh.rate_limiting
print("Requests used: ", start[0] - end[0])
print("Cache hits: %s misses: %s" % (issues.cache_hits, issues.cache_misses))
issues = GithubIssues(gh, 'avocado-framework/avocado-vt')
start = end
print("Total number of issues (this could take a while):")
print(GithubIssuesBase.__len__(issues))
end = gh.rate_limiting
print("Requests used: ", start[0] - end[0])
print("Cache hits: %s misses: %s" % (issues.cache_hits, issues.cache_misses))
issues = GithubIssues(gh, 'avocado-framework/avocado-vt')
start = end
print("Open issues last few days without any label (could take 2-10 minutes):")
two_days = datetime.timedelta(days=2)
last_week = datetime.datetime.now() - two_days
criteria = {'state': 'open', 'since': last_week}
for number in issues.search(criteria):
issue = issues[number]
if len(issue['labels']) < 1:
print('https://github.com/avocado-framework/avocado-vt/issues/%s\t"%s"'
% (issue['number'], issue['summary']))
print()
print("Requests used: ", start[0] - end[0])
print("Cache hits: %s misses: %s" % (issues.cache_hits, issues.cache_misses))
issues = GithubIssues(gh, 'avocado-framework/avocado-vt')
start = end
print("Total number of issues (this should be a lot faster):")
print(len(issues))
end = gh.rate_limiting
print("Final Requests used: ", start[0] - end[0])
print("Cache hits: %s misses: %s" % (issues.cache_hits, issues.cache_misses))
del issues