Skip to content

Commit

Permalink
run linter
Browse files Browse the repository at this point in the history
  • Loading branch information
dannyl1u committed Oct 9, 2024
1 parent 4d63958 commit 1679abf
Showing 1 changed file with 34 additions and 21 deletions.
55 changes: 34 additions & 21 deletions evals/gh_issues_to_csv.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,19 +2,16 @@
import csv
from datetime import datetime


def get_github_issues(owner, repo, token):
issues = []
page = 1
while True:
url = f"https://api.github.com/repos/{owner}/{repo}/issues"
params = {
"state": "all",
"per_page": 100,
"page": page
}
params = {"state": "all", "per_page": 100, "page": page}
headers = {
"Authorization": f"token {token}",
"Accept": "application/vnd.github.v3+json"
"Accept": "application/vnd.github.v3+json",
}
response = requests.get(url, params=params, headers=headers)
response.raise_for_status()
Expand All @@ -25,30 +22,46 @@ def get_github_issues(owner, repo, token):
page += 1
return issues


def save_issues_to_csv(issues, filename):
with open(filename, 'w', newline='', encoding='utf-8') as csvfile:
fieldnames = ['number', 'title', 'state', 'created_at', 'updated_at', 'closed_at', 'labels', 'assignees', 'comments']
with open(filename, "w", newline="", encoding="utf-8") as csvfile:
fieldnames = [
"number",
"title",
"state",
"created_at",
"updated_at",
"closed_at",
"labels",
"assignees",
"comments",
]
writer = csv.DictWriter(csvfile, fieldnames=fieldnames)
writer.writeheader()
for issue in issues:
writer.writerow({
'number': issue['number'],
'title': issue['title'],
'state': issue['state'],
'created_at': issue['created_at'],
'updated_at': issue['updated_at'],
'closed_at': issue['closed_at'],
'labels': ', '.join([label['name'] for label in issue['labels']]),
'assignees': ', '.join([assignee['login'] for assignee in issue['assignees']]),
'comments': issue['comments']
})
writer.writerow(
{
"number": issue["number"],
"title": issue["title"],
"state": issue["state"],
"created_at": issue["created_at"],
"updated_at": issue["updated_at"],
"closed_at": issue["closed_at"],
"labels": ", ".join([label["name"] for label in issue["labels"]]),
"assignees": ", ".join(
[assignee["login"] for assignee in issue["assignees"]]
),
"comments": issue["comments"],
}
)


if __name__ == "__main__":
owner = input("Enter the repository owner: ")
repo = input("Enter the repository name: ")
token = input("Enter your GitHub personal access token: ")

issues = get_github_issues(owner, repo, token)
filename = f"{owner}_{repo}_issues_{datetime.now().strftime('%Y%m%d_%H%M%S')}.csv"
save_issues_to_csv(issues, filename)
print(f"Issues saved to {filename}")
print(f"Issues saved to {filename}")

0 comments on commit 1679abf

Please sign in to comment.