File tree Expand file tree Collapse file tree 1 file changed +11
-0
lines changed
Expand file tree Collapse file tree 1 file changed +11
-0
lines changed Original file line number Diff line number Diff line change @@ -672,6 +672,8 @@ export class IssuesProcessor {
672672
673673 const events : IIssueEvent [ ] = [ ] ;
674674 let pagesFetched = 0 ;
675+ let reachedSinceDate = false ;
676+ let hitEventsCap = false ;
675677
676678 for await ( const page of this . client . paginate . iterator ( options ) ) {
677679 pagesFetched += 1 ;
@@ -680,6 +682,7 @@ export class IssuesProcessor {
680682
681683 const pageEvents = page . data as IIssueEvent [ ] ;
682684 if ( pageEvents . length === 0 ) {
685+ reachedSinceDate = true ;
683686 break ;
684687 }
685688
@@ -690,20 +693,28 @@ export class IssuesProcessor {
690693 . filter ( timestamp => ! Number . isNaN ( timestamp ) ) ;
691694
692695 if ( pageTimestamps . length === 0 ) {
696+ reachedSinceDate = true ;
693697 break ;
694698 }
695699
696700 const oldestTimestampInPage = Math . min ( ...pageTimestamps ) ;
697701
698702 if ( oldestTimestampInPage < sinceTimestamp ) {
703+ reachedSinceDate = true ;
699704 break ;
700705 }
701706
702707 if ( pagesFetched >= 3 ) {
708+ hitEventsCap = true ;
703709 break ;
704710 }
705711 }
706712
713+ if ( hitEventsCap && ! reachedSinceDate ) {
714+ // May be more events to process, but we hit our cap, so fall back to issue.updated_at
715+ return false ;
716+ }
717+
707718 const relevantEvents = events . filter ( event => {
708719 const eventTimestamp = new Date ( event . created_at ) . getTime ( ) ;
709720 return ! Number . isNaN ( eventTimestamp ) && eventTimestamp >= sinceTimestamp ;
You can’t perform that action at this time.
0 commit comments