File tree Expand file tree Collapse file tree 1 file changed +15
-1
lines changed Expand file tree Collapse file tree 1 file changed +15
-1
lines changed Original file line number Diff line number Diff line change @@ -69,6 +69,20 @@ def list_labels(self, repo: Repository) -> typing.List[Label]:
69
69
f"{ self .base_url } /repos/{ repo .owner } /{ repo .name } /labels" ,
70
70
headers = {"Accept" : "application/vnd.github.symmetra-preview+json" },
71
71
)
72
+ json = response .json ()
73
+
74
+ link_header = response .headers .get ('Link' , [])
75
+ next_page = [l for l in link_header .split (',' ) if 'rel="next"' in l ]
76
+ while next_page :
77
+ l , _ = next_page [0 ].split (';' )
78
+ logger .debug (f"Requesting { l .split ('?' )[1 ]} " )
79
+ response = self .session .get (
80
+ l [1 :- 1 ],
81
+ headers = {"Accept" : "application/vnd.github.symmetra-preview+json" },
82
+ )
83
+ json .extend (response .json ())
84
+ link_header = response .headers .get ('Link' )
85
+ next_page = [l for l in link_header .split (',' ) if 'rel="next"' in l ]
72
86
73
87
if response .status_code != 200 :
74
88
raise GitHubException (
@@ -77,7 +91,7 @@ def list_labels(self, repo: Repository) -> typing.List[Label]:
77
91
f"{ response .reason } "
78
92
)
79
93
80
- return [Label (** data ) for data in response . json () ]
94
+ return [Label (** data ) for data in json ]
81
95
82
96
def get_label (self , repo : Repository , * , name : str ) -> Label :
83
97
"""Return a single Label from the repository.
You can’t perform that action at this time.
0 commit comments