python-gitlab 6.0.0__tar.gz → 6.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (363) hide show
  1. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/PKG-INFO +1 -1
  2. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/protected_branches.rst +9 -4
  3. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/users.rst +4 -0
  4. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/_version.py +1 -1
  5. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/cli.py +1 -1
  6. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/const.py +2 -0
  7. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/cli.py +1 -1
  8. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/branches.py +24 -0
  9. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/groups.py +2 -0
  10. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/projects.py +9 -1
  11. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/tags.py +1 -0
  12. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/users.py +14 -0
  13. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/python_gitlab.egg-info/PKG-INFO +1 -1
  14. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/requirements-docker.txt +1 -1
  15. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/requirements-lint.txt +5 -5
  16. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/requirements-test.txt +3 -3
  17. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/requirements.txt +1 -1
  18. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_groups.py +25 -0
  19. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_users.py +26 -1
  20. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/test_cli.py +1 -1
  21. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/AUTHORS +0 -0
  22. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/CHANGELOG.md +0 -0
  23. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/COPYING +0 -0
  24. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/MANIFEST.in +0 -0
  25. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/README.rst +0 -0
  26. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/Makefile +0 -0
  27. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/__init__.py +0 -0
  28. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/_static/js/gitter.js +0 -0
  29. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/api/gitlab.rst +0 -0
  30. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/api/gitlab.v4.rst +0 -0
  31. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/api-levels.rst +0 -0
  32. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/api-objects.rst +0 -0
  33. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/api-usage-advanced.rst +0 -0
  34. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/api-usage-graphql.rst +0 -0
  35. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/api-usage.rst +0 -0
  36. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/changelog.md +0 -0
  37. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/cli-examples.rst +0 -0
  38. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/cli-objects.rst +0 -0
  39. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/cli-usage.rst +0 -0
  40. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/conf.py +0 -0
  41. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/ext/__init__.py +0 -0
  42. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/ext/docstrings.py +0 -0
  43. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/ext/manager_tmpl.j2 +0 -0
  44. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/faq.rst +0 -0
  45. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/access_requests.rst +0 -0
  46. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/appearance.rst +0 -0
  47. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/applications.rst +0 -0
  48. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/badges.rst +0 -0
  49. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/boards.rst +0 -0
  50. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/branches.rst +0 -0
  51. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/bulk_imports.rst +0 -0
  52. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/ci_lint.rst +0 -0
  53. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/cluster_agents.rst +0 -0
  54. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/clusters.rst +0 -0
  55. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/commits.rst +0 -0
  56. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/deploy_keys.rst +0 -0
  57. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/deploy_tokens.rst +0 -0
  58. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/deployments.rst +0 -0
  59. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/discussions.rst +0 -0
  60. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/draft_notes.rst +0 -0
  61. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/emojis.rst +0 -0
  62. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/environments.rst +0 -0
  63. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/epics.rst +0 -0
  64. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/events.rst +0 -0
  65. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/features.rst +0 -0
  66. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/geo_nodes.rst +0 -0
  67. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/group_access_tokens.rst +0 -0
  68. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/groups.rst +0 -0
  69. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/invitations.rst +0 -0
  70. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/issues.rst +0 -0
  71. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/iterations.rst +0 -0
  72. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/job_token_scope.rst +0 -0
  73. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/keys.rst +0 -0
  74. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/labels.rst +0 -0
  75. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/member_roles.rst +0 -0
  76. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/merge_request_approvals.rst +0 -0
  77. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/merge_requests.rst +0 -0
  78. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/merge_trains.rst +0 -0
  79. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/messages.rst +0 -0
  80. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/milestones.rst +0 -0
  81. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/namespaces.rst +0 -0
  82. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/notes.rst +0 -0
  83. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/notifications.rst +0 -0
  84. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/packages.rst +0 -0
  85. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/pagesdomains.rst +0 -0
  86. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/personal_access_tokens.rst +0 -0
  87. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/pipelines_and_jobs.rst +0 -0
  88. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/project_access_tokens.rst +0 -0
  89. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/projects.rst +0 -0
  90. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/protected_container_repositories.rst +0 -0
  91. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/protected_environments.rst +0 -0
  92. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/protected_packages.rst +0 -0
  93. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/pull_mirror.rst +0 -0
  94. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/releases.rst +0 -0
  95. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/remote_mirrors.rst +0 -0
  96. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/repositories.rst +0 -0
  97. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/repository_tags.rst +0 -0
  98. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/resource_groups.rst +0 -0
  99. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/runners.rst +0 -0
  100. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/search.rst +0 -0
  101. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/secure_files.rst +0 -0
  102. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/settings.rst +0 -0
  103. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/sidekiq.rst +0 -0
  104. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/snippets.rst +0 -0
  105. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/statistics.rst +0 -0
  106. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/status_checks.rst +0 -0
  107. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/system_hooks.rst +0 -0
  108. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/templates.rst +0 -0
  109. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/todos.rst +0 -0
  110. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/topics.rst +0 -0
  111. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/variables.rst +0 -0
  112. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/gl_objects/wikis.rst +0 -0
  113. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/index.rst +0 -0
  114. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/make.bat +0 -0
  115. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/docs/release-notes.rst +0 -0
  116. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/__init__.py +0 -0
  117. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/__main__.py +0 -0
  118. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/_backends/__init__.py +0 -0
  119. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/_backends/graphql.py +0 -0
  120. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/_backends/protocol.py +0 -0
  121. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/_backends/requests_backend.py +0 -0
  122. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/base.py +0 -0
  123. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/client.py +0 -0
  124. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/config.py +0 -0
  125. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/exceptions.py +0 -0
  126. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/mixins.py +0 -0
  127. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/py.typed +0 -0
  128. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/types.py +0 -0
  129. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/utils.py +0 -0
  130. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/__init__.py +0 -0
  131. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/__init__.py +0 -0
  132. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/access_requests.py +0 -0
  133. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/appearance.py +0 -0
  134. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/applications.py +0 -0
  135. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/artifacts.py +0 -0
  136. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/audit_events.py +0 -0
  137. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/award_emojis.py +0 -0
  138. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/badges.py +0 -0
  139. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/boards.py +0 -0
  140. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/broadcast_messages.py +0 -0
  141. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/bulk_imports.py +0 -0
  142. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/ci_lint.py +0 -0
  143. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/cluster_agents.py +0 -0
  144. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/clusters.py +0 -0
  145. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/commits.py +0 -0
  146. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/container_registry.py +0 -0
  147. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/custom_attributes.py +0 -0
  148. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/deploy_keys.py +0 -0
  149. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/deploy_tokens.py +0 -0
  150. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/deployments.py +0 -0
  151. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/discussions.py +0 -0
  152. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/draft_notes.py +0 -0
  153. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/environments.py +0 -0
  154. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/epics.py +0 -0
  155. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/events.py +0 -0
  156. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/export_import.py +0 -0
  157. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/features.py +0 -0
  158. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/files.py +0 -0
  159. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/geo_nodes.py +0 -0
  160. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/group_access_tokens.py +0 -0
  161. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/hooks.py +0 -0
  162. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/integrations.py +0 -0
  163. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/invitations.py +0 -0
  164. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/issues.py +0 -0
  165. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/iterations.py +0 -0
  166. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/job_token_scope.py +0 -0
  167. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/jobs.py +0 -0
  168. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/keys.py +0 -0
  169. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/labels.py +0 -0
  170. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/ldap.py +0 -0
  171. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/member_roles.py +0 -0
  172. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/members.py +0 -0
  173. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/merge_request_approvals.py +0 -0
  174. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/merge_requests.py +0 -0
  175. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/merge_trains.py +0 -0
  176. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/milestones.py +0 -0
  177. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/namespaces.py +0 -0
  178. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/notes.py +0 -0
  179. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/notification_settings.py +0 -0
  180. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/package_protection_rules.py +0 -0
  181. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/packages.py +0 -0
  182. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/pages.py +0 -0
  183. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/personal_access_tokens.py +0 -0
  184. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/pipelines.py +0 -0
  185. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/project_access_tokens.py +0 -0
  186. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/push_rules.py +0 -0
  187. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/registry_protection_repository_rules.py +0 -0
  188. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/registry_protection_rules.py +0 -0
  189. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/releases.py +0 -0
  190. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/repositories.py +0 -0
  191. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/resource_groups.py +0 -0
  192. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/reviewers.py +0 -0
  193. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/runners.py +0 -0
  194. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/secure_files.py +0 -0
  195. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/service_accounts.py +0 -0
  196. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/settings.py +0 -0
  197. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/sidekiq.py +0 -0
  198. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/snippets.py +0 -0
  199. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/statistics.py +0 -0
  200. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/status_checks.py +0 -0
  201. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/templates.py +0 -0
  202. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/todos.py +0 -0
  203. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/topics.py +0 -0
  204. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/triggers.py +0 -0
  205. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/variables.py +0 -0
  206. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/gitlab/v4/objects/wikis.py +0 -0
  207. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/pyproject.toml +0 -0
  208. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/python_gitlab.egg-info/SOURCES.txt +0 -0
  209. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/python_gitlab.egg-info/dependency_links.txt +0 -0
  210. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/python_gitlab.egg-info/entry_points.txt +0 -0
  211. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/python_gitlab.egg-info/requires.txt +0 -0
  212. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/python_gitlab.egg-info/top_level.txt +0 -0
  213. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/requirements-docs.txt +0 -0
  214. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/requirements-precommit.txt +0 -0
  215. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/setup.cfg +0 -0
  216. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/__init__.py +0 -0
  217. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/conftest.py +0 -0
  218. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/__init__.py +0 -0
  219. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/__init__.py +0 -0
  220. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_boards.py +0 -0
  221. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_branches.py +0 -0
  222. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_bulk_imports.py +0 -0
  223. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_current_user.py +0 -0
  224. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_deploy_keys.py +0 -0
  225. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_deploy_tokens.py +0 -0
  226. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_epics.py +0 -0
  227. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_gitlab.py +0 -0
  228. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_graphql.py +0 -0
  229. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_import_export.py +0 -0
  230. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_issues.py +0 -0
  231. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_keys.py +0 -0
  232. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_lazy_objects.py +0 -0
  233. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_member_roles.py +0 -0
  234. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_merge_requests.py +0 -0
  235. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_packages.py +0 -0
  236. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_project_job_token_scope.py +0 -0
  237. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_projects.py +0 -0
  238. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_push_rules.py +0 -0
  239. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_registry.py +0 -0
  240. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_releases.py +0 -0
  241. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_repository.py +0 -0
  242. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_services.py +0 -0
  243. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_snippets.py +0 -0
  244. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_statistics.py +0 -0
  245. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_topics.py +0 -0
  246. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_users.py +0 -0
  247. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_variables.py +0 -0
  248. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/api/test_wikis.py +0 -0
  249. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/__init__.py +0 -0
  250. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/conftest.py +0 -0
  251. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/test_cli.py +0 -0
  252. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/test_cli_artifacts.py +0 -0
  253. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/test_cli_files.py +0 -0
  254. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/test_cli_packages.py +0 -0
  255. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/test_cli_projects.py +0 -0
  256. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/test_cli_repository.py +0 -0
  257. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/test_cli_resource_access_tokens.py +0 -0
  258. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/test_cli_users.py +0 -0
  259. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/test_cli_v4.py +0 -0
  260. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/cli/test_cli_variables.py +0 -0
  261. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/conftest.py +0 -0
  262. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/ee-test.py +0 -0
  263. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/fixtures/.env +0 -0
  264. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/fixtures/__init__.py +0 -0
  265. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/fixtures/avatar.png +0 -0
  266. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/fixtures/create_license.rb +0 -0
  267. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/fixtures/docker-compose.yml +0 -0
  268. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/fixtures/docker.py +0 -0
  269. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/fixtures/invalid_auth.cfg +0 -0
  270. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/fixtures/invalid_version.cfg +0 -0
  271. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/fixtures/set_token.rb +0 -0
  272. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/functional/helpers.py +0 -0
  273. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/install/test_install.py +0 -0
  274. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/smoke/__init__.py +0 -0
  275. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/smoke/test_dists.py +0 -0
  276. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/__init__.py +0 -0
  277. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/_backends/__init__.py +0 -0
  278. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/_backends/test_requests_backend.py +0 -0
  279. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/base/test_rest_manager.py +0 -0
  280. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/base/test_rest_object.py +0 -0
  281. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/conftest.py +0 -0
  282. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/helpers.py +0 -0
  283. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/meta/__init__.py +0 -0
  284. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/meta/test_abstract_attrs.py +0 -0
  285. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/meta/test_imports.py +0 -0
  286. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/meta/test_mro.py +0 -0
  287. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/mixins/__init__.py +0 -0
  288. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/mixins/test_meta_mixins.py +0 -0
  289. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/mixins/test_mixin_methods.py +0 -0
  290. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/mixins/test_object_mixins_attributes.py +0 -0
  291. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/__init__.py +0 -0
  292. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/conftest.py +0 -0
  293. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_appearance.py +0 -0
  294. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_applications.py +0 -0
  295. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_audit_events.py +0 -0
  296. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_badges.py +0 -0
  297. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_bridges.py +0 -0
  298. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_bulk_imports.py +0 -0
  299. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_ci_lint.py +0 -0
  300. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_cluster_agents.py +0 -0
  301. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_commits.py +0 -0
  302. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_deploy_tokens.py +0 -0
  303. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_deployments.py +0 -0
  304. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_draft_notes.py +0 -0
  305. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_environments.py +0 -0
  306. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_group_access_tokens.py +0 -0
  307. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_group_merge_request_approvals.py +0 -0
  308. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_groups.py +0 -0
  309. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_hooks.py +0 -0
  310. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_invitations.py +0 -0
  311. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_issues.py +0 -0
  312. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_iterations.py +0 -0
  313. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_job_artifacts.py +0 -0
  314. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_job_token_scope.py +0 -0
  315. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_jobs.py +0 -0
  316. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_keys.py +0 -0
  317. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_member_roles.py +0 -0
  318. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_members.py +0 -0
  319. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_merge_request_pipelines.py +0 -0
  320. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_merge_requests.py +0 -0
  321. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_merge_trains.py +0 -0
  322. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_package_protection_rules.py +0 -0
  323. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_packages.py +0 -0
  324. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_personal_access_tokens.py +0 -0
  325. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_pipeline_schedules.py +0 -0
  326. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_pipelines.py +0 -0
  327. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_project_access_tokens.py +0 -0
  328. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_project_import_export.py +0 -0
  329. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_project_merge_request_approvals.py +0 -0
  330. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_project_statistics.py +0 -0
  331. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_projects.py +0 -0
  332. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_pull_mirror.py +0 -0
  333. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_registry_protection_rules.py +0 -0
  334. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_registry_repositories.py +0 -0
  335. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_releases.py +0 -0
  336. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_remote_mirrors.py +0 -0
  337. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_repositories.py +0 -0
  338. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_resource_groups.py +0 -0
  339. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_resource_iteration_events.py +0 -0
  340. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_resource_label_events.py +0 -0
  341. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_resource_milestone_events.py +0 -0
  342. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_resource_state_events.py +0 -0
  343. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_runners.py +0 -0
  344. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_secure_files.py +0 -0
  345. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_services.py +0 -0
  346. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_snippets.py +0 -0
  347. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_statistics.py +0 -0
  348. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_status_checks.py +0 -0
  349. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_submodules.py +0 -0
  350. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_templates.py +0 -0
  351. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_todos.py +0 -0
  352. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_topics.py +0 -0
  353. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/objects/test_variables.py +0 -0
  354. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/test_config.py +0 -0
  355. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/test_exceptions.py +0 -0
  356. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/test_gitlab.py +0 -0
  357. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/test_gitlab_auth.py +0 -0
  358. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/test_gitlab_http_methods.py +0 -0
  359. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/test_graphql.py +0 -0
  360. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/test_retry.py +0 -0
  361. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/test_types.py +0 -0
  362. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tests/unit/test_utils.py +0 -0
  363. {python_gitlab-6.0.0 → python_gitlab-6.1.0}/tox.ini +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-gitlab
3
- Version: 6.0.0
3
+ Version: 6.1.0
4
4
  Summary: The python wrapper for the GitLab REST and GraphQL APIs.
5
5
  Author-email: Gauvain Pocentek <gauvain@pocentek.net>
6
6
  Maintainer-email: John Villalovos <john@sodarock.com>, Max Wittig <max.wittig@siemens.com>, Nejc Habjan <nejc.habjan@siemens.com>, Roger Meier <r.meier@siemens.com>
@@ -2,8 +2,8 @@
2
2
  Protected branches
3
3
  ##################
4
4
 
5
- You can define a list of protected branch names on a repository. Names can use
6
- wildcards (``*``).
5
+ You can define a list of protected branch names on a repository or group.
6
+ Names can use wildcards (``*``).
7
7
 
8
8
  References
9
9
  ----------
@@ -13,19 +13,24 @@ References
13
13
  + :class:`gitlab.v4.objects.ProjectProtectedBranch`
14
14
  + :class:`gitlab.v4.objects.ProjectProtectedBranchManager`
15
15
  + :attr:`gitlab.v4.objects.Project.protectedbranches`
16
+ + :class:`gitlab.v4.objects.GroupProtectedBranch`
17
+ + :class:`gitlab.v4.objects.GroupProtectedBranchManager`
18
+ + :attr:`gitlab.v4.objects.Group.protectedbranches`
16
19
 
17
20
  * GitLab API: https://docs.gitlab.com/api/protected_branches#protected-branches-api
18
21
 
19
22
  Examples
20
23
  --------
21
24
 
22
- Get the list of protected branches for a project::
25
+ Get the list of protected branches for a project or group::
23
26
 
24
- p_branches = project.protectedbranches.list(get_all=True)
27
+ p_branches = project.protectedbranches.list()
28
+ p_branches = group.protectedbranches.list()
25
29
 
26
30
  Get a single protected branch::
27
31
 
28
32
  p_branch = project.protectedbranches.get('main')
33
+ p_branch = group.protectedbranches.get('main')
29
34
 
30
35
  Update a protected branch::
31
36
 
@@ -107,6 +107,10 @@ Get the followings of a user::
107
107
 
108
108
  user.following_users.list(get_all=True)
109
109
 
110
+ List a user's contributed projects::
111
+
112
+ user.contributed_projects.list(get_all=True)
113
+
110
114
  List a user's starred projects::
111
115
 
112
116
  user.starred_projects.list(get_all=True)
@@ -3,4 +3,4 @@ __copyright__ = "Copyright 2013-2019 Gauvain Pocentek, 2019-2023 python-gitlab t
3
3
  __email__ = "gauvainpocentek@gmail.com"
4
4
  __license__ = "LGPL3"
5
5
  __title__ = "python-gitlab"
6
- __version__ = "6.0.0"
6
+ __version__ = "6.1.0"
@@ -107,7 +107,7 @@ def gitlab_resource_to_cls(
107
107
  return class_type
108
108
 
109
109
 
110
- def cls_to_gitlab_resource(cls: RESTObject) -> str:
110
+ def cls_to_gitlab_resource(cls: type[RESTObject]) -> str:
111
111
  dasherized_uppercase = camel_upperlower_regex.sub(r"\1-\2", cls.__name__)
112
112
  dasherized_lowercase = camel_lowerupper_regex.sub(r"\1-\2", dasherized_uppercase)
113
113
  return dasherized_lowercase.lower()
@@ -93,6 +93,7 @@ DEFAULT_URL: str = "https://gitlab.com"
93
93
  NO_ACCESS = AccessLevel.NO_ACCESS.value
94
94
  MINIMAL_ACCESS = AccessLevel.MINIMAL_ACCESS.value
95
95
  GUEST_ACCESS = AccessLevel.GUEST.value
96
+ PLANNER_ACCESS = AccessLevel.PLANNER.value
96
97
  REPORTER_ACCESS = AccessLevel.REPORTER.value
97
98
  DEVELOPER_ACCESS = AccessLevel.DEVELOPER.value
98
99
  MAINTAINER_ACCESS = AccessLevel.MAINTAINER.value
@@ -151,6 +152,7 @@ __all__ = [
151
152
  "NOTIFICATION_LEVEL_PARTICIPATING",
152
153
  "NOTIFICATION_LEVEL_WATCH",
153
154
  "OWNER_ACCESS",
155
+ "PLANNER_ACCESS",
154
156
  "REPORTER_ACCESS",
155
157
  "SEARCH_SCOPE_BLOBS",
156
158
  "SEARCH_SCOPE_COMMITS",
@@ -394,7 +394,7 @@ def extend_parser(parser: argparse.ArgumentParser) -> argparse.ArgumentParser:
394
394
  subparsers.required = True
395
395
 
396
396
  # populate argparse for all Gitlab Object
397
- classes = set()
397
+ classes: set[type[gitlab.base.RESTObject]] = set()
398
398
  for cls in gitlab.v4.objects.__dict__.values():
399
399
  if not isinstance(cls, type):
400
400
  continue
@@ -49,3 +49,27 @@ class ProjectProtectedBranchManager(CRUDMixin[ProjectProtectedBranch]):
49
49
  ),
50
50
  )
51
51
  _update_method = UpdateMethod.PATCH
52
+
53
+
54
+ class GroupProtectedBranch(SaveMixin, ObjectDeleteMixin, RESTObject):
55
+ _id_attr = "name"
56
+
57
+
58
+ class GroupProtectedBranchManager(CRUDMixin[GroupProtectedBranch]):
59
+ _path = "/groups/{group_id}/protected_branches"
60
+ _obj_cls = GroupProtectedBranch
61
+ _from_parent_attrs = {"group_id": "id"}
62
+ _create_attrs = RequiredOptional(
63
+ required=("name",),
64
+ optional=(
65
+ "push_access_level",
66
+ "merge_access_level",
67
+ "unprotect_access_level",
68
+ "allow_force_push",
69
+ "allowed_to_push",
70
+ "allowed_to_merge",
71
+ "allowed_to_unprotect",
72
+ "code_owner_approval_required",
73
+ ),
74
+ )
75
+ _update_method = UpdateMethod.PATCH
@@ -24,6 +24,7 @@ from .access_requests import GroupAccessRequestManager # noqa: F401
24
24
  from .audit_events import GroupAuditEventManager # noqa: F401
25
25
  from .badges import GroupBadgeManager # noqa: F401
26
26
  from .boards import GroupBoardManager # noqa: F401
27
+ from .branches import GroupProtectedBranchManager # noqa: F401
27
28
  from .clusters import GroupClusterManager # noqa: F401
28
29
  from .container_registry import GroupRegistryRepositoryManager # noqa: F401
29
30
  from .custom_attributes import GroupCustomAttributeManager # noqa: F401
@@ -102,6 +103,7 @@ class Group(SaveMixin, ObjectDeleteMixin, RESTObject):
102
103
  packages: GroupPackageManager
103
104
  projects: GroupProjectManager
104
105
  shared_projects: SharedProjectManager
106
+ protectedbranches: GroupProtectedBranchManager
105
107
  pushrules: GroupPushRulesManager
106
108
  registry_repositories: GroupRegistryRepositoryManager
107
109
  runners: GroupRunnerManager
@@ -429,6 +429,7 @@ class Project(
429
429
  ref: str,
430
430
  token: str,
431
431
  variables: dict[str, Any] | None = None,
432
+ inputs: dict[str, Any] | None = None,
432
433
  **kwargs: Any,
433
434
  ) -> ProjectPipeline:
434
435
  """Trigger a CI build.
@@ -439,6 +440,7 @@ class Project(
439
440
  ref: Commit to build; can be a branch name or a tag
440
441
  token: The trigger token
441
442
  variables: Variables passed to the build script
443
+ inputs: Inputs passed to the build script
442
444
  **kwargs: Extra options to send to the server (e.g. sudo)
443
445
 
444
446
  Raises:
@@ -446,8 +448,14 @@ class Project(
446
448
  GitlabCreateError: If the server failed to perform the request
447
449
  """
448
450
  variables = variables or {}
451
+ inputs = inputs or {}
449
452
  path = f"/projects/{self.encoded_id}/trigger/pipeline"
450
- post_data = {"ref": ref, "token": token, "variables": variables}
453
+ post_data = {
454
+ "ref": ref,
455
+ "token": token,
456
+ "variables": variables,
457
+ "inputs": inputs,
458
+ }
451
459
  attrs = self.manager.gitlab.http_post(path, post_data=post_data, **kwargs)
452
460
  if TYPE_CHECKING:
453
461
  assert isinstance(attrs, dict)
@@ -19,6 +19,7 @@ class ProjectTagManager(NoUpdateMixin[ProjectTag]):
19
19
  _path = "/projects/{project_id}/repository/tags"
20
20
  _obj_cls = ProjectTag
21
21
  _from_parent_attrs = {"project_id": "id"}
22
+ _list_filters = ("order_by", "sort", "search")
22
23
  _create_attrs = RequiredOptional(
23
24
  required=("tag_name", "ref"), optional=("message",)
24
25
  )
@@ -68,6 +68,8 @@ __all__ = [
68
68
  "UserMembershipManager",
69
69
  "UserProject",
70
70
  "UserProjectManager",
71
+ "UserContributedProject",
72
+ "UserContributedProjectManager",
71
73
  ]
72
74
 
73
75
 
@@ -182,6 +184,7 @@ class User(SaveMixin, ObjectDeleteMixin, RESTObject):
182
184
  memberships: UserMembershipManager
183
185
  personal_access_tokens: UserPersonalAccessTokenManager
184
186
  projects: UserProjectManager
187
+ contributed_projects: UserContributedProjectManager
185
188
  starred_projects: StarredProjectManager
186
189
  status: UserStatusManager
187
190
 
@@ -665,6 +668,17 @@ class UserProjectManager(ListMixin[UserProject], CreateMixin[UserProject]):
665
668
  return super().list(path=path, iterator=iterator, **kwargs)
666
669
 
667
670
 
671
+ class UserContributedProject(RESTObject):
672
+ _id_attr = "id"
673
+ _repr_attr = "path_with_namespace"
674
+
675
+
676
+ class UserContributedProjectManager(ListMixin[UserContributedProject]):
677
+ _path = "/users/{user_id}/contributed_projects"
678
+ _obj_cls = UserContributedProject
679
+ _from_parent_attrs = {"user_id": "id"}
680
+
681
+
668
682
  class StarredProject(RESTObject):
669
683
  pass
670
684
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: python-gitlab
3
- Version: 6.0.0
3
+ Version: 6.1.0
4
4
  Summary: The python wrapper for the GitLab REST and GraphQL APIs.
5
5
  Author-email: Gauvain Pocentek <gauvain@pocentek.net>
6
6
  Maintainer-email: John Villalovos <john@sodarock.com>, Max Wittig <max.wittig@siemens.com>, Nejc Habjan <nejc.habjan@siemens.com>, Roger Meier <r.meier@siemens.com>
@@ -1,3 +1,3 @@
1
1
  -r requirements.txt
2
2
  -r requirements-test.txt
3
- pytest-docker==3.2.1
3
+ pytest-docker==3.2.2
@@ -1,14 +1,14 @@
1
1
  -r requirements.txt
2
2
  argcomplete==2.0.0
3
3
  black==25.1.0
4
- commitizen==4.8.2
4
+ commitizen==4.8.3
5
5
  flake8==7.2.0
6
6
  isort==6.0.1
7
- mypy==1.15.0
7
+ mypy==1.16.0
8
8
  pylint==3.3.7
9
- pytest==8.3.5
9
+ pytest==8.4.0
10
10
  responses==0.25.7
11
11
  respx==0.22.0
12
12
  types-PyYAML==6.0.12.20250516
13
- types-requests==2.32.0.20250515
14
- types-setuptools==80.8.0.20250521
13
+ types-requests==2.32.4.20250611
14
+ types-setuptools==80.9.0.20250529
@@ -1,11 +1,11 @@
1
1
  -r requirements.txt
2
2
  anyio==4.9.0
3
3
  build==1.2.2.post1
4
- coverage==7.8.2
4
+ coverage==7.9.1
5
5
  pytest-console-scripts==1.4.1
6
- pytest-cov==6.1.1
6
+ pytest-cov==6.2.1
7
7
  pytest-github-actions-annotate-failures==0.3.0
8
- pytest==8.3.5
8
+ pytest==8.4.0
9
9
  PyYaml==6.0.2
10
10
  responses==0.25.7
11
11
  respx==0.22.0
@@ -1,4 +1,4 @@
1
1
  gql==3.5.3
2
2
  httpx==0.28.1
3
- requests==2.32.3
3
+ requests==2.32.4
4
4
  requests-toolbelt==1.0.0
@@ -312,6 +312,31 @@ def test_group_hooks(group):
312
312
  hook.delete()
313
313
 
314
314
 
315
+ def test_group_protected_branches(group, gitlab_version):
316
+ # Updating a protected branch at the group level is possible from Gitlab 15.9
317
+ # https://docs.gitlab.com/api/group_protected_branches/
318
+ can_update_prot_branch = gitlab_version.major > 15 or (
319
+ gitlab_version.major == 15 and gitlab_version.minor >= 9
320
+ )
321
+
322
+ p_b = group.protectedbranches.create(
323
+ {"name": "*-stable", "allow_force_push": False}
324
+ )
325
+ assert p_b.name == "*-stable"
326
+ assert not p_b.allow_force_push
327
+ assert p_b in group.protectedbranches.list()
328
+
329
+ if can_update_prot_branch:
330
+ p_b.allow_force_push = True
331
+ p_b.save()
332
+
333
+ p_b = group.protectedbranches.get("*-stable")
334
+ if can_update_prot_branch:
335
+ assert p_b.allow_force_push
336
+
337
+ p_b.delete()
338
+
339
+
315
340
  def test_group_transfer(gl, group):
316
341
  transfer_group = gl.groups.create(
317
342
  {"name": "transfer-test-group", "path": "transfer-test-group"}
@@ -7,7 +7,13 @@ https://docs.gitlab.com/ee/api/projects.html#list-projects-starred-by-a-user
7
7
  import pytest
8
8
  import responses
9
9
 
10
- from gitlab.v4.objects import StarredProject, User, UserMembership, UserStatus
10
+ from gitlab.v4.objects import (
11
+ StarredProject,
12
+ User,
13
+ UserContributedProject,
14
+ UserMembership,
15
+ UserStatus,
16
+ )
11
17
 
12
18
  from .test_projects import project_content
13
19
 
@@ -242,6 +248,19 @@ def resp_starred_projects():
242
248
  yield rsps
243
249
 
244
250
 
251
+ @pytest.fixture
252
+ def resp_contributed_projects():
253
+ with responses.RequestsMock() as rsps:
254
+ rsps.add(
255
+ method=responses.GET,
256
+ url="http://localhost/api/v4/users/1/contributed_projects",
257
+ json=[project_content],
258
+ content_type="application/json",
259
+ status=200,
260
+ )
261
+ yield rsps
262
+
263
+
245
264
  @pytest.fixture
246
265
  def resp_runner_create():
247
266
  with responses.RequestsMock() as rsps:
@@ -314,6 +333,12 @@ def test_list_followers(user, resp_followers_following):
314
333
  assert followings[1].id == 4
315
334
 
316
335
 
336
+ def test_list_contributed_projects(user, resp_contributed_projects):
337
+ projects = user.contributed_projects.list()
338
+ assert isinstance(projects[0], UserContributedProject)
339
+ assert projects[0].id == project_content["id"]
340
+
341
+
317
342
  def test_list_starred_projects(user, resp_starred_projects):
318
343
  projects = user.starred_projects.list()
319
344
  assert isinstance(projects[0], StarredProject)
@@ -161,7 +161,7 @@ def test_extend_parser():
161
161
  "Raise error instead of exiting on invalid arguments, to make testing easier"
162
162
  raise ValueError(message)
163
163
 
164
- class Fake:
164
+ class Fake(gitlab.base.RESTObject):
165
165
  _id_attr = None
166
166
 
167
167
  class FakeManager(CreateMixin, UpdateMixin, gitlab.base.RESTManager):
File without changes
File without changes
File without changes
File without changes