From d113017cf772e00a05d7a497c7026b9f04c4bd7d Mon Sep 17 00:00:00 2001
From: Erwan Rouchet <rouchet@teklia.com>
Date: Thu, 14 Sep 2023 09:35:18 +0200
Subject: [PATCH] Suppress python-gitlab UserWarning

---
 arkindex/process/providers.py                  | 8 ++++----
 arkindex/process/tests/test_gitlab_provider.py | 4 ++--
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/arkindex/process/providers.py b/arkindex/process/providers.py
index a392f28885..4bc977910d 100644
--- a/arkindex/process/providers.py
+++ b/arkindex/process/providers.py
@@ -134,13 +134,13 @@ class GitLabProvider(GitProvider):
         gl = self._get_gitlab_client(self.credentials)
         # Creating a webhook on a repo requires Maintainer (40) or Owner (50) access levels
         # See https://docs.gitlab.com/ce/api/members.html#valid-access-levels
-        return gl.projects.list(min_access_level=40, search=query)
+        return gl.projects.list(min_access_level=40, search=query, get_all=False)
 
     def get_latest_commit_sha(self, repo):
         project = self._get_project_from_repo(repo)
         # Since ref_name isn't specified, we will use the repository default branch
         # See : https://docs.gitlab.com/ee/api/commits.html#list-repository-commits
-        return project.commits.list()[0].id
+        return project.commits.list(per_page=1, get_all=False)[0].id
 
     def to_dict(self, project):
         return {
@@ -298,10 +298,10 @@ class GitLabProvider(GitProvider):
             except ValueError:
                 logger.warning(f'{ref_type.value} {ref.name} was ignored during revision creation')
 
-        for branch in project.branches.list():
+        for branch in project.branches.list(get_all=True):
             _update_reference(branch, GitRefType.Branch)
 
-        for tag in project.tags.list():
+        for tag in project.tags.list(get_all=True):
             _update_reference(tag, GitRefType.Tag)
 
     def handle_webhook(self, repo, request):
diff --git a/arkindex/process/tests/test_gitlab_provider.py b/arkindex/process/tests/test_gitlab_provider.py
index 35f85bc0de..b7bc455074 100644
--- a/arkindex/process/tests/test_gitlab_provider.py
+++ b/arkindex/process/tests/test_gitlab_provider.py
@@ -51,7 +51,7 @@ class TestGitLabProvider(FixtureTestCase):
         self.assertEqual(self.gl_mock().projects.list.call_count, 1)
         args, kwargs = self.gl_mock().projects.list.call_args
         self.assertTupleEqual(args, ())
-        self.assertDictEqual(kwargs, {'min_access_level': 40, 'search': None})
+        self.assertDictEqual(kwargs, {'get_all': False, 'min_access_level': 40, 'search': None})
 
     @responses.activate
     @override_settings(PUBLIC_HOSTNAME='https://arkindex.localhost', GITLAB_APP_ID='abcd', GITLAB_APP_SECRET='s3kr3t')
@@ -102,7 +102,7 @@ class TestGitLabProvider(FixtureTestCase):
         self.assertEqual(self.gl_mock().projects.list.call_count, 1)
         args, kwargs = self.gl_mock().projects.list.call_args
         self.assertTupleEqual(args, ())
-        self.assertDictEqual(kwargs, {'min_access_level': 40, 'search': 'meh'})
+        self.assertDictEqual(kwargs, {'get_all': False, 'min_access_level': 40, 'search': 'meh'})
 
     @override_settings(PUBLIC_HOSTNAME='https://arkindex.localhost')
     def test_list_repos_requires_credentials(self):
-- 
GitLab