gitlab-api 25.32.0__tar.gz → 25.36.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.
- {gitlab_api-25.32.0/gitlab_api.egg-info → gitlab_api-25.36.0}/PKG-INFO +6 -6
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/README.md +1 -1
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/agent_server.py +1 -1
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp_server.py +1 -1
- {gitlab_api-25.32.0 → gitlab_api-25.36.0/gitlab_api.egg-info}/PKG-INFO +6 -6
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api.egg-info/SOURCES.txt +0 -1
- gitlab_api-25.36.0/gitlab_api.egg-info/requires.txt +21 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/pyproject.toml +5 -5
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_gitlab_a2a_validation.py +4 -1
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_gitlab_mcp_validation.py +4 -1
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_verify_agent.py +4 -1
- gitlab_api-25.32.0/gitlab_api.egg-info/requires.txt +0 -21
- gitlab_api-25.32.0/test_setup.py +0 -39
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/LICENSE +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/MANIFEST.in +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/__init__.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/__main__.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api/__init__.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api/api_client_base.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api/api_client_environments.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api/api_client_issues.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api/api_client_merge_requests.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api/api_client_other.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api/api_client_pipelines.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api/api_client_projects.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api/api_client_repositories.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api/api_client_system.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api/api_client_users_groups.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/api_client.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/auth.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/gitlab_gql.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/gitlab_input_models.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/gitlab_response_models.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/__init__.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_branches.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_commits.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_custom_api.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_deploy_tokens.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_environments.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_epics.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_graphql.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_groups.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_issues.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_jobs.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_labels.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_members.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_merge_requests.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_merge_rules.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_milestones.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_misc.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_notes.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_packages.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_pipeline_schedules.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_pipelines.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_projects.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_protected_branches.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_releases.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_runners.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_snippets.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp/mcp_tags.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api/mcp_config.json +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api.egg-info/dependency_links.txt +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api.egg-info/entry_points.txt +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/gitlab_api.egg-info/top_level.txt +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/requirements.txt +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/scripts/validate_a2a_agent.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/scripts/validate_agent.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/scripts/verify_api_integration.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/setup.cfg +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/__init__.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/conftest.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_api_wrapper.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_auth.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_concept_parity.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_gitlab_api_brute_force_coverage.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_gitlab_gql.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_gitlab_models.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_init_dynamics.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_mock_coverage.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/test_startup.py +0 -0
- {gitlab_api-25.32.0 → gitlab_api-25.36.0}/tests/verify_a2a_queries.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gitlab-api
|
|
3
|
-
Version: 25.
|
|
3
|
+
Version: 25.36.0
|
|
4
4
|
Summary: GitLab API + MCP Server + A2A Server
|
|
5
5
|
Author-email: Audel Rouhi <knucklessg1@gmail.com>
|
|
6
6
|
License: MIT
|
|
@@ -12,17 +12,17 @@ Classifier: Programming Language :: Python :: 3
|
|
|
12
12
|
Requires-Python: <3.14,>=3.11
|
|
13
13
|
Description-Content-Type: text/markdown
|
|
14
14
|
License-File: LICENSE
|
|
15
|
-
Requires-Dist: agent-utilities>=0.
|
|
15
|
+
Requires-Dist: agent-utilities>=0.34.0
|
|
16
16
|
Requires-Dist: python-dotenv>=1.0.0
|
|
17
17
|
Requires-Dist: gql>=4.0.0
|
|
18
18
|
Provides-Extra: mcp
|
|
19
|
-
Requires-Dist: agent-utilities[mcp]>=0.
|
|
19
|
+
Requires-Dist: agent-utilities[mcp]>=0.34.0; extra == "mcp"
|
|
20
20
|
Provides-Extra: agent
|
|
21
|
-
Requires-Dist: agent-utilities[agent,logfire]>=0.
|
|
21
|
+
Requires-Dist: agent-utilities[agent,logfire]>=0.34.0; extra == "agent"
|
|
22
22
|
Provides-Extra: gql
|
|
23
23
|
Requires-Dist: gql>=4.0.0; extra == "gql"
|
|
24
24
|
Provides-Extra: all
|
|
25
|
-
Requires-Dist: gitlab-api[agent,gql,logfire,mcp]>=25.
|
|
25
|
+
Requires-Dist: gitlab-api[agent,gql,logfire,mcp]>=25.36.0; extra == "all"
|
|
26
26
|
Provides-Extra: test
|
|
27
27
|
Requires-Dist: pytest-xdist>=3.6.0; extra == "test"
|
|
28
28
|
Requires-Dist: pytest; extra == "test"
|
|
@@ -52,7 +52,7 @@ Dynamic: license-file
|
|
|
52
52
|

|
|
53
53
|

|
|
54
54
|
|
|
55
|
-
*Version: 25.
|
|
55
|
+
*Version: 25.36.0*
|
|
56
56
|
|
|
57
57
|
---
|
|
58
58
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: gitlab-api
|
|
3
|
-
Version: 25.
|
|
3
|
+
Version: 25.36.0
|
|
4
4
|
Summary: GitLab API + MCP Server + A2A Server
|
|
5
5
|
Author-email: Audel Rouhi <knucklessg1@gmail.com>
|
|
6
6
|
License: MIT
|
|
@@ -12,17 +12,17 @@ Classifier: Programming Language :: Python :: 3
|
|
|
12
12
|
Requires-Python: <3.14,>=3.11
|
|
13
13
|
Description-Content-Type: text/markdown
|
|
14
14
|
License-File: LICENSE
|
|
15
|
-
Requires-Dist: agent-utilities>=0.
|
|
15
|
+
Requires-Dist: agent-utilities>=0.34.0
|
|
16
16
|
Requires-Dist: python-dotenv>=1.0.0
|
|
17
17
|
Requires-Dist: gql>=4.0.0
|
|
18
18
|
Provides-Extra: mcp
|
|
19
|
-
Requires-Dist: agent-utilities[mcp]>=0.
|
|
19
|
+
Requires-Dist: agent-utilities[mcp]>=0.34.0; extra == "mcp"
|
|
20
20
|
Provides-Extra: agent
|
|
21
|
-
Requires-Dist: agent-utilities[agent,logfire]>=0.
|
|
21
|
+
Requires-Dist: agent-utilities[agent,logfire]>=0.34.0; extra == "agent"
|
|
22
22
|
Provides-Extra: gql
|
|
23
23
|
Requires-Dist: gql>=4.0.0; extra == "gql"
|
|
24
24
|
Provides-Extra: all
|
|
25
|
-
Requires-Dist: gitlab-api[agent,gql,logfire,mcp]>=25.
|
|
25
|
+
Requires-Dist: gitlab-api[agent,gql,logfire,mcp]>=25.36.0; extra == "all"
|
|
26
26
|
Provides-Extra: test
|
|
27
27
|
Requires-Dist: pytest-xdist>=3.6.0; extra == "test"
|
|
28
28
|
Requires-Dist: pytest; extra == "test"
|
|
@@ -52,7 +52,7 @@ Dynamic: license-file
|
|
|
52
52
|

|
|
53
53
|

|
|
54
54
|
|
|
55
|
-
*Version: 25.
|
|
55
|
+
*Version: 25.36.0*
|
|
56
56
|
|
|
57
57
|
---
|
|
58
58
|
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
agent-utilities>=0.34.0
|
|
2
|
+
python-dotenv>=1.0.0
|
|
3
|
+
gql>=4.0.0
|
|
4
|
+
|
|
5
|
+
[agent]
|
|
6
|
+
agent-utilities[agent,logfire]>=0.34.0
|
|
7
|
+
|
|
8
|
+
[all]
|
|
9
|
+
gitlab-api[agent,gql,logfire,mcp]>=25.36.0
|
|
10
|
+
|
|
11
|
+
[gql]
|
|
12
|
+
gql>=4.0.0
|
|
13
|
+
|
|
14
|
+
[mcp]
|
|
15
|
+
agent-utilities[mcp]>=0.34.0
|
|
16
|
+
|
|
17
|
+
[test]
|
|
18
|
+
pytest-xdist>=3.6.0
|
|
19
|
+
pytest
|
|
20
|
+
pytest-asyncio
|
|
21
|
+
pytest-cov
|
|
@@ -4,12 +4,12 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "gitlab-api"
|
|
7
|
-
version = "25.
|
|
7
|
+
version = "25.36.0"
|
|
8
8
|
description = "GitLab API + MCP Server + A2A Server"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
classifiers = [ "Development Status :: 5 - Production/Stable", "License :: Public Domain", "Environment :: Console", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3",]
|
|
11
11
|
requires-python = ">=3.11, <3.14"
|
|
12
|
-
dependencies = [ "agent-utilities>=0.
|
|
12
|
+
dependencies = [ "agent-utilities>=0.34.0", "python-dotenv>=1.0.0", "gql>=4.0.0",]
|
|
13
13
|
[[project.authors]]
|
|
14
14
|
name = "Audel Rouhi"
|
|
15
15
|
email = "knucklessg1@gmail.com"
|
|
@@ -18,10 +18,10 @@ email = "knucklessg1@gmail.com"
|
|
|
18
18
|
text = "MIT"
|
|
19
19
|
|
|
20
20
|
[project.optional-dependencies]
|
|
21
|
-
mcp = [ "agent-utilities[mcp]>=0.
|
|
22
|
-
agent = [ "agent-utilities[agent,logfire]>=0.
|
|
21
|
+
mcp = [ "agent-utilities[mcp]>=0.34.0",]
|
|
22
|
+
agent = [ "agent-utilities[agent,logfire]>=0.34.0",]
|
|
23
23
|
gql = [ "gql>=4.0.0",]
|
|
24
|
-
all = [ "gitlab-api[mcp,agent,gql,logfire]>=25.
|
|
24
|
+
all = [ "gitlab-api[mcp,agent,gql,logfire]>=25.36.0",]
|
|
25
25
|
test = [
|
|
26
26
|
"pytest-xdist>=3.6.0", "pytest", "pytest-asyncio", "pytest-cov",]
|
|
27
27
|
|
|
@@ -6,7 +6,10 @@ import time
|
|
|
6
6
|
import pytest
|
|
7
7
|
import requests
|
|
8
8
|
|
|
9
|
-
pytestmark = [
|
|
9
|
+
pytestmark = [
|
|
10
|
+
pytest.mark.skip(reason="Requires live instance/integration environment"),
|
|
11
|
+
pytest.mark.integration,
|
|
12
|
+
]
|
|
10
13
|
import logging
|
|
11
14
|
|
|
12
15
|
logging.basicConfig(level=logging.INFO)
|
|
@@ -4,7 +4,10 @@ import sys
|
|
|
4
4
|
import pytest
|
|
5
5
|
import requests
|
|
6
6
|
|
|
7
|
-
pytestmark = [
|
|
7
|
+
pytestmark = [
|
|
8
|
+
pytest.mark.skip(reason="Requires live instance/integration environment"),
|
|
9
|
+
pytest.mark.integration,
|
|
10
|
+
]
|
|
8
11
|
|
|
9
12
|
logging.basicConfig(level=logging.INFO)
|
|
10
13
|
logger = logging.getLogger(__name__)
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import pytest
|
|
2
2
|
|
|
3
|
-
pytestmark = [
|
|
3
|
+
pytestmark = [
|
|
4
|
+
pytest.mark.skip(reason="Requires live instance/integration environment"),
|
|
5
|
+
pytest.mark.integration,
|
|
6
|
+
]
|
|
4
7
|
import json
|
|
5
8
|
import logging
|
|
6
9
|
import subprocess
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
agent-utilities>=0.26.0
|
|
2
|
-
python-dotenv>=1.0.0
|
|
3
|
-
gql>=4.0.0
|
|
4
|
-
|
|
5
|
-
[agent]
|
|
6
|
-
agent-utilities[agent,logfire]>=0.26.0
|
|
7
|
-
|
|
8
|
-
[all]
|
|
9
|
-
gitlab-api[agent,gql,logfire,mcp]>=25.32.0
|
|
10
|
-
|
|
11
|
-
[gql]
|
|
12
|
-
gql>=4.0.0
|
|
13
|
-
|
|
14
|
-
[mcp]
|
|
15
|
-
agent-utilities[mcp]>=0.26.0
|
|
16
|
-
|
|
17
|
-
[test]
|
|
18
|
-
pytest-xdist>=3.6.0
|
|
19
|
-
pytest
|
|
20
|
-
pytest-asyncio
|
|
21
|
-
pytest-cov
|
gitlab_api-25.32.0/test_setup.py
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import os
|
|
2
|
-
import sys
|
|
3
|
-
|
|
4
|
-
from agent_utilities import initialize_graph_from_workspace
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
def test_template_in_process():
|
|
8
|
-
print("Testing gitlab-api setup for in-process MCP...", file=sys.stderr)
|
|
9
|
-
|
|
10
|
-
os.environ.pop("MCP_URL", None)
|
|
11
|
-
os.environ.pop("MCP_CONFIG", None)
|
|
12
|
-
|
|
13
|
-
graph, config = initialize_graph_from_workspace()
|
|
14
|
-
|
|
15
|
-
mcp_toolsets = config.get("mcp_toolsets", [])
|
|
16
|
-
print(f"Number of toolsets: {len(mcp_toolsets)}", file=sys.stderr)
|
|
17
|
-
|
|
18
|
-
if not mcp_toolsets:
|
|
19
|
-
print("FAIL: No toolsets found!", file=sys.stderr)
|
|
20
|
-
sys.exit(1)
|
|
21
|
-
|
|
22
|
-
found_fastmcp = False
|
|
23
|
-
for ts in mcp_toolsets:
|
|
24
|
-
if hasattr(ts, "name") and ts.name == "GitLab":
|
|
25
|
-
print(f"SUCCESS: Found in-process toolset: {ts}", file=sys.stderr)
|
|
26
|
-
found_fastmcp = True
|
|
27
|
-
break
|
|
28
|
-
|
|
29
|
-
if not found_fastmcp:
|
|
30
|
-
print(
|
|
31
|
-
"FAIL: In-process GitLab MCP toolset not found in config.", file=sys.stderr
|
|
32
|
-
)
|
|
33
|
-
sys.exit(1)
|
|
34
|
-
else:
|
|
35
|
-
print("Template verification PASSED.", file=sys.stderr)
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
if __name__ == "__main__":
|
|
39
|
-
test_template_in_process()
|
|
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
|
|
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
|
|
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
|
|
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
|