Tools: gitea utils does not load all pages #120948

Merged
Jacques Lucke merged 4 commits from JacquesLucke/blender:gitea-utils-page-limit into main 2024-04-28 01:07:01 +02:00
1 changed files with 2 additions and 4 deletions

View File

@ -40,10 +40,8 @@ def url_json_get(url: str) -> Optional[Union[Dict[str, Any], List[Dict[str, Any]
def url_json_get_all_pages(
url: str,
limit: int = 50,
verbose: bool = False,
) -> List[Dict[str, Any]]:
assert limit <= 50, "50 is the maximum limit of items per page"
result: List[Dict[str, Any]] = []
page = 1
while True:
@ -54,14 +52,14 @@ def url_json_get_all_pages(
# XXX: In some cases, a bug prevents using the `page` and `limit` parameters if the page is 1
result_page = url_json_get(url)
else:
result_page = url_json_get(f"{url}&page={page}&limit={limit}")
result_page = url_json_get(f"{url}&page={page}")
if not result_page:
break
assert isinstance(result_page, list)
result.extend(result_page)
if len(result_page) < limit:
if len(result_page) == 0:
break
page += 1