@@ -47,21 +47,21 @@ type ActivityStats struct {
4747func GetActivityStats (ctx context.Context , repo * repo_model.Repository , timeFrom time.Time , releases , issues , prs , code bool ) (* ActivityStats , error ) {
4848 stats := & ActivityStats {Code : & git.CodeActivityStats {}}
4949 if releases {
50- if err := stats .FillReleases (repo .ID , timeFrom ); err != nil {
50+ if err := stats .FillReleases (ctx , repo .ID , timeFrom ); err != nil {
5151 return nil , fmt .Errorf ("FillReleases: %w" , err )
5252 }
5353 }
5454 if prs {
55- if err := stats .FillPullRequests (repo .ID , timeFrom ); err != nil {
55+ if err := stats .FillPullRequests (ctx , repo .ID , timeFrom ); err != nil {
5656 return nil , fmt .Errorf ("FillPullRequests: %w" , err )
5757 }
5858 }
5959 if issues {
60- if err := stats .FillIssues (repo .ID , timeFrom ); err != nil {
60+ if err := stats .FillIssues (ctx , repo .ID , timeFrom ); err != nil {
6161 return nil , fmt .Errorf ("FillIssues: %w" , err )
6262 }
6363 }
64- if err := stats .FillUnresolvedIssues (repo .ID , timeFrom , issues , prs ); err != nil {
64+ if err := stats .FillUnresolvedIssues (ctx , repo .ID , timeFrom , issues , prs ); err != nil {
6565 return nil , fmt .Errorf ("FillUnresolvedIssues: %w" , err )
6666 }
6767 if code {
@@ -205,41 +205,41 @@ func (stats *ActivityStats) PublishedReleaseCount() int {
205205}
206206
207207// FillPullRequests returns pull request information for activity page
208- func (stats * ActivityStats ) FillPullRequests (repoID int64 , fromTime time.Time ) error {
208+ func (stats * ActivityStats ) FillPullRequests (ctx context. Context , repoID int64 , fromTime time.Time ) error {
209209 var err error
210210 var count int64
211211
212212 // Merged pull requests
213- sess := pullRequestsForActivityStatement (repoID , fromTime , true )
213+ sess := pullRequestsForActivityStatement (ctx , repoID , fromTime , true )
214214 sess .OrderBy ("pull_request.merged_unix DESC" )
215215 stats .MergedPRs = make (issues_model.PullRequestList , 0 )
216216 if err = sess .Find (& stats .MergedPRs ); err != nil {
217217 return err
218218 }
219- if err = stats .MergedPRs .LoadAttributes (); err != nil {
219+ if err = stats .MergedPRs .LoadAttributes (ctx ); err != nil {
220220 return err
221221 }
222222
223223 // Merged pull request authors
224- sess = pullRequestsForActivityStatement (repoID , fromTime , true )
224+ sess = pullRequestsForActivityStatement (ctx , repoID , fromTime , true )
225225 if _ , err = sess .Select ("count(distinct issue.poster_id) as `count`" ).Table ("pull_request" ).Get (& count ); err != nil {
226226 return err
227227 }
228228 stats .MergedPRAuthorCount = count
229229
230230 // Opened pull requests
231- sess = pullRequestsForActivityStatement (repoID , fromTime , false )
231+ sess = pullRequestsForActivityStatement (ctx , repoID , fromTime , false )
232232 sess .OrderBy ("issue.created_unix ASC" )
233233 stats .OpenedPRs = make (issues_model.PullRequestList , 0 )
234234 if err = sess .Find (& stats .OpenedPRs ); err != nil {
235235 return err
236236 }
237- if err = stats .OpenedPRs .LoadAttributes (); err != nil {
237+ if err = stats .OpenedPRs .LoadAttributes (ctx ); err != nil {
238238 return err
239239 }
240240
241241 // Opened pull request authors
242- sess = pullRequestsForActivityStatement (repoID , fromTime , false )
242+ sess = pullRequestsForActivityStatement (ctx , repoID , fromTime , false )
243243 if _ , err = sess .Select ("count(distinct issue.poster_id) as `count`" ).Table ("pull_request" ).Get (& count ); err != nil {
244244 return err
245245 }
@@ -248,8 +248,8 @@ func (stats *ActivityStats) FillPullRequests(repoID int64, fromTime time.Time) e
248248 return nil
249249}
250250
251- func pullRequestsForActivityStatement (repoID int64 , fromTime time.Time , merged bool ) * xorm.Session {
252- sess := db .GetEngine (db . DefaultContext ).Where ("pull_request.base_repo_id=?" , repoID ).
251+ func pullRequestsForActivityStatement (ctx context. Context , repoID int64 , fromTime time.Time , merged bool ) * xorm.Session {
252+ sess := db .GetEngine (ctx ).Where ("pull_request.base_repo_id=?" , repoID ).
253253 Join ("INNER" , "issue" , "pull_request.issue_id = issue.id" )
254254
255255 if merged {
@@ -264,35 +264,35 @@ func pullRequestsForActivityStatement(repoID int64, fromTime time.Time, merged b
264264}
265265
266266// FillIssues returns issue information for activity page
267- func (stats * ActivityStats ) FillIssues (repoID int64 , fromTime time.Time ) error {
267+ func (stats * ActivityStats ) FillIssues (ctx context. Context , repoID int64 , fromTime time.Time ) error {
268268 var err error
269269 var count int64
270270
271271 // Closed issues
272- sess := issuesForActivityStatement (repoID , fromTime , true , false )
272+ sess := issuesForActivityStatement (ctx , repoID , fromTime , true , false )
273273 sess .OrderBy ("issue.closed_unix DESC" )
274274 stats .ClosedIssues = make (issues_model.IssueList , 0 )
275275 if err = sess .Find (& stats .ClosedIssues ); err != nil {
276276 return err
277277 }
278278
279279 // Closed issue authors
280- sess = issuesForActivityStatement (repoID , fromTime , true , false )
280+ sess = issuesForActivityStatement (ctx , repoID , fromTime , true , false )
281281 if _ , err = sess .Select ("count(distinct issue.poster_id) as `count`" ).Table ("issue" ).Get (& count ); err != nil {
282282 return err
283283 }
284284 stats .ClosedIssueAuthorCount = count
285285
286286 // New issues
287- sess = issuesForActivityStatement (repoID , fromTime , false , false )
287+ sess = issuesForActivityStatement (ctx , repoID , fromTime , false , false )
288288 sess .OrderBy ("issue.created_unix ASC" )
289289 stats .OpenedIssues = make (issues_model.IssueList , 0 )
290290 if err = sess .Find (& stats .OpenedIssues ); err != nil {
291291 return err
292292 }
293293
294294 // Opened issue authors
295- sess = issuesForActivityStatement (repoID , fromTime , false , false )
295+ sess = issuesForActivityStatement (ctx , repoID , fromTime , false , false )
296296 if _ , err = sess .Select ("count(distinct issue.poster_id) as `count`" ).Table ("issue" ).Get (& count ); err != nil {
297297 return err
298298 }
@@ -302,12 +302,12 @@ func (stats *ActivityStats) FillIssues(repoID int64, fromTime time.Time) error {
302302}
303303
304304// FillUnresolvedIssues returns unresolved issue and pull request information for activity page
305- func (stats * ActivityStats ) FillUnresolvedIssues (repoID int64 , fromTime time.Time , issues , prs bool ) error {
305+ func (stats * ActivityStats ) FillUnresolvedIssues (ctx context. Context , repoID int64 , fromTime time.Time , issues , prs bool ) error {
306306 // Check if we need to select anything
307307 if ! issues && ! prs {
308308 return nil
309309 }
310- sess := issuesForActivityStatement (repoID , fromTime , false , true )
310+ sess := issuesForActivityStatement (ctx , repoID , fromTime , false , true )
311311 if ! issues || ! prs {
312312 sess .And ("issue.is_pull = ?" , prs )
313313 }
@@ -316,8 +316,8 @@ func (stats *ActivityStats) FillUnresolvedIssues(repoID int64, fromTime time.Tim
316316 return sess .Find (& stats .UnresolvedIssues )
317317}
318318
319- func issuesForActivityStatement (repoID int64 , fromTime time.Time , closed , unresolved bool ) * xorm.Session {
320- sess := db .GetEngine (db . DefaultContext ).Where ("issue.repo_id = ?" , repoID ).
319+ func issuesForActivityStatement (ctx context. Context , repoID int64 , fromTime time.Time , closed , unresolved bool ) * xorm.Session {
320+ sess := db .GetEngine (ctx ).Where ("issue.repo_id = ?" , repoID ).
321321 And ("issue.is_closed = ?" , closed )
322322
323323 if ! unresolved {
@@ -336,20 +336,20 @@ func issuesForActivityStatement(repoID int64, fromTime time.Time, closed, unreso
336336}
337337
338338// FillReleases returns release information for activity page
339- func (stats * ActivityStats ) FillReleases (repoID int64 , fromTime time.Time ) error {
339+ func (stats * ActivityStats ) FillReleases (ctx context. Context , repoID int64 , fromTime time.Time ) error {
340340 var err error
341341 var count int64
342342
343343 // Published releases list
344- sess := releasesForActivityStatement (repoID , fromTime )
344+ sess := releasesForActivityStatement (ctx , repoID , fromTime )
345345 sess .OrderBy ("release.created_unix DESC" )
346346 stats .PublishedReleases = make ([]* repo_model.Release , 0 )
347347 if err = sess .Find (& stats .PublishedReleases ); err != nil {
348348 return err
349349 }
350350
351351 // Published releases authors
352- sess = releasesForActivityStatement (repoID , fromTime )
352+ sess = releasesForActivityStatement (ctx , repoID , fromTime )
353353 if _ , err = sess .Select ("count(distinct release.publisher_id) as `count`" ).Table ("release" ).Get (& count ); err != nil {
354354 return err
355355 }
@@ -358,8 +358,8 @@ func (stats *ActivityStats) FillReleases(repoID int64, fromTime time.Time) error
358358 return nil
359359}
360360
361- func releasesForActivityStatement (repoID int64 , fromTime time.Time ) * xorm.Session {
362- return db .GetEngine (db . DefaultContext ).Where ("release.repo_id = ?" , repoID ).
361+ func releasesForActivityStatement (ctx context. Context , repoID int64 , fromTime time.Time ) * xorm.Session {
362+ return db .GetEngine (ctx ).Where ("release.repo_id = ?" , repoID ).
363363 And ("release.is_draft = ?" , false ).
364364 And ("release.created_unix >= ?" , fromTime .Unix ())
365365}
0 commit comments