qodev-gitlab-api 0.2.1__tar.gz → 0.2.2__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.
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/PKG-INFO +25 -1
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/README.md +24 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/pyproject.toml +1 -1
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/.github/workflows/ci.yml +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/.github/workflows/publish.yml +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/.gitignore +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/LICENSE +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/__init__.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/_base.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/_files.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/_issues.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/_merge_requests.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/_pipelines.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/_releases.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/_variables.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/client.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/exceptions.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/models.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/src/qodev_gitlab_api/py.typed +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/tests/conftest.py +0 -0
- {qodev_gitlab_api-0.2.1 → qodev_gitlab_api-0.2.2}/tests/test_client.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: qodev-gitlab-api
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.2
|
|
4
4
|
Summary: Python client for the GitLab API
|
|
5
5
|
Project-URL: Homepage, https://github.com/qodevai/gitlab-api
|
|
6
6
|
Project-URL: Repository, https://github.com/qodevai/gitlab-api
|
|
@@ -28,10 +28,21 @@ Requires-Dist: pytest>=8.0.0; extra == 'dev'
|
|
|
28
28
|
Requires-Dist: ruff>=0.8.0; extra == 'dev'
|
|
29
29
|
Description-Content-Type: text/markdown
|
|
30
30
|
|
|
31
|
+
[](https://github.com/qodevai/gitlab-api/actions/workflows/ci.yml)
|
|
32
|
+
[](https://pypi.org/project/qodev-gitlab-api/)
|
|
33
|
+
|
|
31
34
|
# qodev-gitlab-api
|
|
32
35
|
|
|
33
36
|
A lightweight, typed Python client for the GitLab REST API. Built on [httpx](https://www.python-httpx.org/) with automatic pagination, structured error handling, and `.env` support, it provides a clean interface for common GitLab operations without the weight of a full-featured SDK.
|
|
34
37
|
|
|
38
|
+
## Why this library?
|
|
39
|
+
|
|
40
|
+
- **Lightweight** -- just `httpx`, no heavy ORM-like abstractions
|
|
41
|
+
- **Typed** -- ships with `py.typed` for full mypy/pyright support
|
|
42
|
+
- **Agent-friendly** -- simple method signatures, dict returns, auto-pagination
|
|
43
|
+
- **Built for tools** -- designed for MCP servers and CLIs, not full application frameworks
|
|
44
|
+
- **Focused** -- `python-gitlab` is comprehensive but heavy; this library covers the operations AI agents and developer tools actually need
|
|
45
|
+
|
|
35
46
|
## Installation
|
|
36
47
|
|
|
37
48
|
```bash
|
|
@@ -53,6 +64,19 @@ client = GitLabClient(token="glpat-xxxxxxxxxxxx", base_url="https://gitlab.examp
|
|
|
53
64
|
client = GitLabClient(validate=False)
|
|
54
65
|
```
|
|
55
66
|
|
|
67
|
+
```python
|
|
68
|
+
# List open merge requests
|
|
69
|
+
mrs = client.get_merge_requests("mygroup/myproject", state="opened")
|
|
70
|
+
for mr in mrs:
|
|
71
|
+
print(f"!{mr['iid']} {mr['title']}")
|
|
72
|
+
|
|
73
|
+
# Create a merge request
|
|
74
|
+
client.create_merge_request("mygroup/myproject", "feature-branch", "main", "Add new feature")
|
|
75
|
+
|
|
76
|
+
# Get pipeline status
|
|
77
|
+
pipelines = client.get_pipelines("mygroup/myproject")
|
|
78
|
+
```
|
|
79
|
+
|
|
56
80
|
## Features
|
|
57
81
|
|
|
58
82
|
- **Merge requests** -- create, update, merge, close, and review with inline diff comments
|
|
@@ -1,7 +1,18 @@
|
|
|
1
|
+
[](https://github.com/qodevai/gitlab-api/actions/workflows/ci.yml)
|
|
2
|
+
[](https://pypi.org/project/qodev-gitlab-api/)
|
|
3
|
+
|
|
1
4
|
# qodev-gitlab-api
|
|
2
5
|
|
|
3
6
|
A lightweight, typed Python client for the GitLab REST API. Built on [httpx](https://www.python-httpx.org/) with automatic pagination, structured error handling, and `.env` support, it provides a clean interface for common GitLab operations without the weight of a full-featured SDK.
|
|
4
7
|
|
|
8
|
+
## Why this library?
|
|
9
|
+
|
|
10
|
+
- **Lightweight** -- just `httpx`, no heavy ORM-like abstractions
|
|
11
|
+
- **Typed** -- ships with `py.typed` for full mypy/pyright support
|
|
12
|
+
- **Agent-friendly** -- simple method signatures, dict returns, auto-pagination
|
|
13
|
+
- **Built for tools** -- designed for MCP servers and CLIs, not full application frameworks
|
|
14
|
+
- **Focused** -- `python-gitlab` is comprehensive but heavy; this library covers the operations AI agents and developer tools actually need
|
|
15
|
+
|
|
5
16
|
## Installation
|
|
6
17
|
|
|
7
18
|
```bash
|
|
@@ -23,6 +34,19 @@ client = GitLabClient(token="glpat-xxxxxxxxxxxx", base_url="https://gitlab.examp
|
|
|
23
34
|
client = GitLabClient(validate=False)
|
|
24
35
|
```
|
|
25
36
|
|
|
37
|
+
```python
|
|
38
|
+
# List open merge requests
|
|
39
|
+
mrs = client.get_merge_requests("mygroup/myproject", state="opened")
|
|
40
|
+
for mr in mrs:
|
|
41
|
+
print(f"!{mr['iid']} {mr['title']}")
|
|
42
|
+
|
|
43
|
+
# Create a merge request
|
|
44
|
+
client.create_merge_request("mygroup/myproject", "feature-branch", "main", "Add new feature")
|
|
45
|
+
|
|
46
|
+
# Get pipeline status
|
|
47
|
+
pipelines = client.get_pipelines("mygroup/myproject")
|
|
48
|
+
```
|
|
49
|
+
|
|
26
50
|
## Features
|
|
27
51
|
|
|
28
52
|
- **Merge requests** -- create, update, merge, close, and review with inline diff comments
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|