summaryrefslogtreecommitdiff
path: root/gitlab
diff options
context:
space:
mode:
authorMax Wittig <max.wittig@siemens.com>2020-01-27 16:52:16 +0100
committerMax Wittig <max.wittig@siemens.com>2020-01-27 16:52:16 +0100
commit99b4484da924f9378518a1a1194e1a3e75b48073 (patch)
treed6fc66d3ef6a943061f3ca0af8b8e9c17fa91b2b /gitlab
parent7843ace913589cf629f448a2541f290a4c7214cd (diff)
downloadgitlab-99b4484da924f9378518a1a1194e1a3e75b48073.tar.gz
feat: use keyset pagination by default for `all=True`
Diffstat (limited to 'gitlab')
-rw-r--r--gitlab/__init__.py6
1 files changed, 6 insertions, 0 deletions
diff --git a/gitlab/__init__.py b/gitlab/__init__.py
index c9716c2..b4adacf 100644
--- a/gitlab/__init__.py
+++ b/gitlab/__init__.py
@@ -640,6 +640,12 @@ class Gitlab(object):
get_all = kwargs.pop("all", False)
url = self._build_url(path)
+ # use keyset pagination automatically, if all=True
+ order_by = kwargs.get("order_by")
+ if get_all and (not order_by or order_by == "id"):
+ kwargs["pagination"] = "keyset"
+ kwargs["order_by"] = "id"
+
if get_all is True and as_list is True:
return list(GitlabList(self, url, query_data, **kwargs))