99 Branch ,
1010 IRepositoryAPI ,
1111 User ,
12- Comment
12+ Comment ,
1313)
1414from github import Github
1515
@@ -22,7 +22,17 @@ def __init__(self, client):
2222 def get_repository (self , id : str ) -> Repository | None :
2323 try :
2424 repo = self .client .get_repo (id )
25- return Repository (_id = repo .full_name , name = repo .name , url = repo .html_url , default_branch = Branch (name = repo .default_branch , last_commit = None ), owner = User (login = repo .owner .login ,username = repo .owner .name ,email = repo .owner .email ))
25+ return Repository (
26+ _id = repo .full_name ,
27+ name = repo .name ,
28+ url = repo .html_url ,
29+ default_branch = Branch (name = repo .default_branch , last_commit = None ),
30+ owner = User (
31+ login = repo .owner .login ,
32+ username = repo .owner .name ,
33+ email = repo .owner .email ,
34+ ),
35+ )
2636 except Exception as e :
2737 logging .error (f"Failed to get repository { id } from GitHub: { e } " )
2838 return None
@@ -38,10 +48,7 @@ def get_commits(self, repo: Repository) -> list[Commit]:
3848 c .author .login if c .author else "unknown" , c .commit .author .email
3949 ),
4050 date = c .commit .author .date ,
41- files = [
42- f .filename
43- for f in c .files
44- ]
51+ files = [f .filename for f in c .files ],
4552 )
4653 for c in commits
4754 ]
@@ -71,14 +78,21 @@ def get_issues(self, repo: Repository) -> list[Issue]:
7178 state = i .state ,
7279 created_at = i .created_at ,
7380 closed_at = i .closed_at ,
74- closed_by = User (login = i .closed_by .login ,username = i .closed_by .name ,email = i .closed_by .email ) if i .closed_by else None ,
81+ closed_by = (
82+ User (
83+ login = i .closed_by .login ,
84+ username = i .closed_by .name ,
85+ email = i .closed_by .email ,
86+ )
87+ if i .closed_by
88+ else None
89+ ),
7590 body = i .body ,
76- user = User (login = i .user .login ,username = i .user .name ,email = i .user .email ),
77- labels = [
78- l .name
79- for l in i .labels
80- ],
81- milestone = i .milestone .title if i .milestone else None
91+ user = User (
92+ login = i .user .login , username = i .user .name , email = i .user .email
93+ ),
94+ labels = [l .name for l in i .labels ],
95+ milestone = i .milestone .title if i .milestone else None ,
8296 )
8397 for i in issues
8498 ]
@@ -93,24 +107,28 @@ def get_pull_requests(self, repo: Repository) -> list[PullRequest]:
93107 PullRequest (
94108 _id = p .number ,
95109 title = p .title ,
96- author = User (login = p .user .login , username = p .user .name , email = p .user .email ),
110+ author = User (
111+ login = p .user .login , username = p .user .name , email = p .user .email
112+ ),
97113 state = p .state ,
98114 created_at = p .created_at ,
99115 head_label = p .head .label ,
100116 base_label = p .base .label ,
101117 head_ref = p .head .ref ,
102118 base_ref = p .base .ref ,
103- merged_by = User (login = p .merged_by .login , username = p .merged_by .name , email = p .merged_by .email ) if p .merged_by else None ,
104- files = [
105- f .filename
106- for f in p .get_files ()
107- ],
119+ merged_by = (
120+ User (
121+ login = p .merged_by .login ,
122+ username = p .merged_by .name ,
123+ email = p .merged_by .email ,
124+ )
125+ if p .merged_by
126+ else None
127+ ),
128+ files = [f .filename for f in p .get_files ()],
108129 issue_url = p .issue_url ,
109- labels = [
110- l .name
111- for l in p .labels
112- ],
113- milestone = p .milestone .title if p .milestone else None
130+ labels = [l .name for l in p .labels ],
131+ milestone = p .milestone .title if p .milestone else None ,
114132 )
115133 for p in pulls
116134 ]
@@ -159,7 +177,9 @@ def get_forks(self, repo: Repository) -> list[Repository]:
159177 repo_client = self .client .get_repo (repo ._id )
160178 result = []
161179 for r in repo_client .get_forks ():
162- result .append (Repository (_id = repo .full_name , name = repo .name , url = repo .html_url ))
180+ result .append (
181+ Repository (_id = repo .full_name , name = repo .name , url = repo .html_url )
182+ )
163183 return result
164184
165185 def get_comments (self , repo , obj ) -> list [Comment ]:
@@ -173,7 +193,15 @@ def get_comments(self, repo, obj) -> list[Comment]:
173193 issue = i
174194 break
175195 for c in issue .get_comments ():
176- result .append (Comment (body = c .body ,created_at = c .created_at ,author = User (login = c .user .login ,username = c .user .name ,email = c .user .email )))
196+ result .append (
197+ Comment (
198+ body = c .body ,
199+ created_at = c .created_at ,
200+ author = User (
201+ login = c .user .login , username = c .user .name , email = c .user .email
202+ ),
203+ )
204+ )
177205 elif type (obj ) == PullRequest :
178206 # TODO оптимизировать
179207 pulls = self .client .get_repo (repo ._id ).get_pulls (state = 'all' )
@@ -183,7 +211,15 @@ def get_comments(self, repo, obj) -> list[Comment]:
183211 pull = p
184212 break
185213 for c in pull .get_comments ():
186- result .append (Comment (body = c .body ,created_at = c .created_at ,author = User (login = c .user .login ,username = c .user .name ,email = c .user .email )))
214+ result .append (
215+ Comment (
216+ body = c .body ,
217+ created_at = c .created_at ,
218+ author = User (
219+ login = c .user .login , username = c .user .name , email = c .user .email
220+ ),
221+ )
222+ )
187223
188224 return result
189225
0 commit comments