- Notifications
You must be signed in to change notification settings - Fork676
Releases: python-gitlab/python-gitlab
v7.0.0
v7.0.0 (2025-10-29)
This release is published under the LGPL-3.0-or-later License.
Features
- Drop Python 3.9 support and add Python 3.14 (
22941ac)
Breaking Changes
- As of python-gitlab 7.0.0, Python 3.9 is no longer supported. Python 3.10 or higher is required.
Detailed Changes:v6.5.0...v7.0.0
Assets2
Uh oh!
There was an error while loading.Please reload this page.
v6.5.0
v6.5.0 (2025-10-17)
This release is published under the LGPL-3.0-or-later License.
Bug Fixes
- semantic-release: Enable CHANGELOG.md generation (
fb9693b)
Continuous Integration
- stale: Fix permission for stale action and allow manual run (
9357a37)
Documentation
- pull_mirror: Fix incorrect start() method usage example (
2acac19)
Features
api: Add content_ref and dry_run_ref parameters to ProjectCiLintManager (
e8d2538)users: Implement 'skip_confirmation' in users 'emails' creation (
2981730)
Detailed Changes:v6.4.0...v6.5.0
Assets2
Uh oh!
There was an error while loading.Please reload this page.
v6.4.0
v6.4.0 (2025-09-28)
This release is published under the LGPL-3.0-or-later License.
Chores
deps: Update actions/setup-python action to v6 (
89cdb78)deps: Update actions/stale action to v10 (
1cc8cad)deps: Update all non-major dependencies (
0c56567)deps: Update all non-major dependencies (
06f62a2)deps: Update all non-major dependencies (
9d4ee07)
Features
users: Implement missing arguments in users 'list' (
99923d4)users: Sort 'user list' arguments against documentation (
99923d4)
Detailed Changes:v6.3.0...v6.4.0
Assets2
Uh oh!
There was an error while loading.Please reload this page.
v6.3.0
v6.3.0 (2025-08-28)
This release is published under the LGPL-3.0-or-later License.
Chores
deps: Update actions/checkout action to v5 (
36629a4)deps: Update actions/download-artifact action to v5 (
397cf39)deps: Update all non-major dependencies (
d40d5d2)deps: Update all non-major dependencies (
2fce144)deps: Update all non-major dependencies (
2dd2e8e)deps: Update all non-major dependencies (
bf7a60a)deps: Update all non-major dependencies (
18c946f)
Features
Add sync method to force remote mirror updates (
f3c6678)api: Add missing ProjectJob list filters (
5fe0e71)api: Add missing ProjectPackageManager list filters (
b1696be)users: Implement support for 'admins' in administrators 'list' (
aaed51c)
Detailed Changes:v6.2.0...v6.3.0
Assets2
Uh oh!
There was an error while loading.Please reload this page.
v6.2.0
v6.2.0 (2025-07-28)
This release is published under the LGPL-3.0-or-later License.
Build System
- release: Use correct python-semantic-release/publish-action (
2f20634)
Chores
deps: Update all non-major dependencies (
3b8fbf4)deps: Update all non-major dependencies (
be25c16)deps: Update all non-major dependencies (
9c095bd)deps: Update all non-major dependencies (
d25b33f)deps: Update dependency furo to v2025 (
b483ece)deps: Update pre-commit hook maxbrunet/pre-commit-renovate to v41 (
d3f31a2)
Continuous Integration
stale: Improve formatting of stale message (
0ef20d1)stale: Increase
operations-per-runto 500 (326e1a4)
Features
api: Add ListMixin to ProjectIssueDiscussionNoteManager (
f908f0e)api: Add ListMixin to ProjectMergeRequestDiscussionNoteManager (
865339a)
Detailed Changes:v6.1.0...v6.2.0
Assets2
Uh oh!
There was an error while loading.Please reload this page.
v6.1.0
v6.1.0 (2025-06-28)
This release is published under the LGPL-3.0-or-later License.
Chores
Update to mypy 1.16.0 and resolve issues found (
f734c58)deps: Update all non-major dependencies (
2bab8d4)deps: Update all non-major dependencies (
a87ba63)deps: Update dependency requests to v2.32.4 [security] (
ff579a6)
Documentation
- Update CONTRIBUTING.rst with policy on issue management (
45dda50)
Features
api: Add listing user contributed projects (
98c1307)api: Add support for project tag list filters (
378a836)const: Add PLANNER_ACCESS constant (
ba6f174)groups: Add protectedbranches to group class (#3164,
bfd31a8)
Detailed Changes:v6.0.0...v6.1.0
Assets2
Uh oh!
There was an error while loading.Please reload this page.
v6.0.0
v6.0.0 (2025-06-04)
This release is published under the LGPL-3.0-or-later License.
Chores
Add reformat code commit to .git-blame-ignore-revs (
a6ac939)Reformat code with skip_magic_trailing_comma = true (
2100aa4)Remove trivial get methods in preparation for generic Get mixin (
edd01a5)Upgrade to sphinx 8.2.1 and resolve issues (
d0b5ae3)ci: Replace docs artifact with readthedocs previews (
193c5de)deps: Update all non-major dependencies (
4fef9f6)deps: Update all non-major dependencies (
78c0c03)deps: Update all non-major dependencies (
ee6cba1)deps: Update all non-major dependencies (
e54516f)deps: Update all non-major dependencies (
159b958)deps: Update all non-major dependencies (
af137ca)deps: Update all non-major dependencies (
1a2a68c)deps: Update all non-major dependencies (
6ad4ce6)deps: Update all non-major dependencies (
f166928)deps: Update all non-major dependencies (
1a95981)deps: Update all non-major dependencies (
451d951)deps: Update all non-major dependencies (
41eb95d)deps: Update all non-major dependencies (
37ff25b)deps: Update dependency black to v25 (
e61157b)deps: Update dependency isort to v6 (
46dfc50)deps: Update dependency jinja2 to v3.1.6 [security] (
52bc585)deps: Update dependency types-setuptools to v76 (
1299440)deps: Update dependency types-setuptools to v78 (
20f83e3)deps: Update dependency types-setuptools to v79 (
2e51cd5)deps: Update dependency types-setuptools to v80 (
9ba9ac0)deps: Update gitlab/gitlab-ee docker tag to v17.8.2-ee.0 (#3135,
051ea71)deps: Update gitlab/gitlab-runner docker tag to v92098577 (#3142,
58e798e)deps: Update gitlab/gitlab-runner docker tag to v92594782 (#3167,
795f83c)deps: Update gitlab/gitlab-runner docker tag to v96856197 (#3190,
8c8fd84)deps: Update pre-commit hook maxbrunet/pre-commit-renovate to v40 (
5a4acab)deps: Update pre-commit hook psf/black to v25 (
9040dbe)deps: Update pre-commit hook pycqa/isort to v6 (
c45e445)deps: Update python-semantic-release/python-semantic-release action to v10 (
f49d54e)dev: Add option for serving docs locally (
beb2f24)
Documentation
Use get_all keyword arg instead of all in docstrings (
f62dda7)Use list(get_all=True) in documentation examples (
f36614f)api-usage: Fix GitLab API links to the publicly accessible URLs (
f55fa15)api-usage-graphql: Fix the example graphql query string (
8dbdd7e)job_token_scope: Fix typo/inconsistency (
203bd92)
Features
Adds member role methods (
055557e)api: Add iteration_id as boards create attribute (#3191,
938b0d9)api: Add support for adding instance deploy keys (
22be96c)api: Add support for avatar removal (
5edd2e6)api: Add support for token self-rotation (
da40e09)api: Listmixin.list typing overload (
6eee494)api: Make RESTManager generic on RESTObject class (
91c4f18)api: Make RESTObjectList typing generic (
befba35)settings: Implement support for 'silent_mode_enabled' (
a9163a9)
Refactoring
- Use more python3.9 syntax (
4e90c11)
Testing
- functional: Switch to new runner registration API (
cbc613d)
Detailed Changes:v5.6.0...v6.0.0
Assets2
Uh oh!
There was an error while loading.Please reload this page.
v5.6.0
v5.6.0 (2025-01-28)
Features
- group: Add support for group level MR approval rules (
304bdd0)
Detailed Changes:v5.5.0...v5.6.0
Assets2
Uh oh!
There was an error while loading.Please reload this page.
v5.5.0
v5.5.0 (2025-01-28)
Chores
Add deprecation warning for mirror_pull functions (
7f6fd5c)Relax typing constraints for response action (
f430078)tests: Catch deprecation warnings (
0c1af08)
Documentation
Features
- projects: Add pull mirror class (
2411bff)
Detailed Changes:v5.4.0...v5.5.0
Assets2
Uh oh!
There was an error while loading.Please reload this page.
v5.4.0
v5.4.0 (2025-01-28)
Bug Fixes
- api: Make type ignores more specific where possible (
e3cb806)
Instead of using absolute ignore# type: ignore use a more specific ignores like# type: ignore[override]. This might help in the future where a new bug might be introduced and get ignored by a general ignore comment but not a more specific one.
Signed-off-by: Igor Ponomarevigor.ponomarev@collabora.com
api: Return the new commit when calling cherry_pick (
de29503)files: Add optional ref parameter for cli project-file raw (#3032) (
22f03bd)
The ef parameter was removed in python-gitlab v4.8.0. This will add ef back as an optional parameter for the project-file raw cli command.
Chores
pytest has changed the function argument name tostart_path
- Fix warning being generated (
0eb5eb0)
The CI shows a warning. Useget_all=False to resolve issue.
- Resolve DeprecationWarning message in CI run (
accd5aa)
Catch the DeprecationWarning in our test, as we expect it.
- ci: Set a 30 minute timeout for 'functional' tests (
e8d6953)
Currently the functional API test takes around 17 minutes to run. And the functional CLI test takes around 12 minutes to run.
Occasionally a job gets stuck and will sit until the default 360 minutes job timeout occurs.
Now have a 30 minute timeout for the 'functional' tests.
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
- deps: Update mypy to 1.14 and resolve issues (
671e711)
mypy 1.14 has a change to Enum Membership Semantics:https://mypy.readthedocs.io/en/latest/changelog.html
Resolve the issues with Enum and typing, and update mypy to 1.14
- test: Prevent 'job_with_artifact' fixture running forever (
e4673d8)
Previously the 'job_with_artifact' fixture could run forever. Now give it up to 60 seconds to complete before failing.
Continuous Integration
- Use gitlab-runner:v17.7.1 for the CI (
2dda9dc)
Thelatest gitlab-runner image does not have thegitlab-runner user and it causes our tests to fail.
Closes:#3091
Features
- api: Add argument that appends extra HTTP headers to a request (
fb07b5c)
Currently the only way to manipulate the headers for a request is to useGitlab.headers attribute. However, this makes it very concurrently unsafe because theGitlab object can be shared between multiple requests at the same time.
Instead add a new keyword argumentextra_headers which will update the headers dictionary with new values just before the request is sent.
For example, this can be used to download a part of a artifacts file using theRange header:https://developer.mozilla.org/en-US/docs/Web/HTTP/Range_requests
Signed-off-by: Igor Ponomarevigor.ponomarev@collabora.com
api: Add support for external status check (
175b355)api: Narrow down return type of download methods using typing.overload (
44fd9dc)
Currently the download methods such asProjectJob.artifacts have return type set toOptional[Union[bytes, Iterator[Any]]] which means they return eitherNone orbytes orIterator[Any].
However, the actual return type is determined by the passedstreamed anditerator arguments. Using@typing.overload decorator it is possible to return a single type based on the passed arguments.
Add overloads in the following order to all download methods:
- If
streamed=Falseanditerator=Falsereturnbytes. This is the default argument values therefore it should be first as it will be used to lookup default arguments. 2. Ifiterator=TruereturnIterator[Any]. This can be combined with bothstreamed=Trueandstreamed=False. 3. Ifstreamed=Trueanditerator=FalsereturnNone. In this caseactionargument can be set to a callable that acceptsbytes.
Signed-off-by: Igor Ponomarevigor.ponomarev@collabora.com
- api: Narrow down return type of ProjectFileManager.raw using typing.overload (
36d9b24)
This is equivalent to the changes in44fd9dc but forProjectFileManager.raw method that I must have missed in the original commit.
Signed-off-by: Igor Ponomarevigor.ponomarev@collabora.com
Detailed Changes:v5.3.1...v5.4.0
Assets2
Uh oh!
There was an error while loading.Please reload this page.