python-gitlab 5.3.0__tar.gz → 5.4.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.
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/CHANGELOG.md +165 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/PKG-INFO +2 -2
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/api-objects.rst +1 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/api-usage-advanced.rst +17 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/protected_container_repositories.rst +4 -4
- python_gitlab-5.4.0/docs/gl_objects/status_checks.rst +57 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/_version.py +1 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/client.py +6 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/const.py +52 -52
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/mixins.py +35 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/__init__.py +2 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/artifacts.py +91 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/commits.py +7 -2
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/files.py +46 -4
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/issues.py +1 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/jobs.py +114 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/labels.py +2 -2
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/merge_requests.py +2 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/packages.py +44 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/projects.py +44 -4
- python_gitlab-5.3.0/gitlab/v4/objects/registry_repository_protection_rules.py → python_gitlab-5.4.0/gitlab/v4/objects/registry_protection_repository_rules.py +1 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/repositories.py +84 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/secure_files.py +44 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/snippets.py +79 -2
- python_gitlab-5.4.0/gitlab/v4/objects/status_checks.py +52 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/python_gitlab.egg-info/PKG-INFO +2 -2
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/python_gitlab.egg-info/SOURCES.txt +5 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/requirements-docs.txt +1 -1
- python_gitlab-5.4.0/requirements-lint.txt +14 -0
- python_gitlab-5.4.0/requirements-precommit.txt +1 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/requirements-test.txt +6 -6
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/requirements.txt +1 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_gitlab.py +1 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_import_export.py +1 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_projects.py +16 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_registry.py +2 -2
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_repository.py +22 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_snippets.py +4 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/cli/test_cli_artifacts.py +11 -0
- python_gitlab-5.4.0/tests/functional/cli/test_cli_files.py +21 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/conftest.py +4 -2
- python_gitlab-5.4.0/tests/functional/fixtures/.env +4 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/fixtures/docker-compose.yml +1 -1
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_commits.py +25 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_job_artifacts.py +24 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_registry_protection_rules.py +6 -6
- python_gitlab-5.4.0/tests/unit/objects/test_status_checks.py +127 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/test_gitlab_http_methods.py +23 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tox.ini +2 -0
- python_gitlab-5.3.0/requirements-lint.txt +0 -14
- python_gitlab-5.3.0/requirements-precommit.txt +0 -1
- python_gitlab-5.3.0/tests/functional/fixtures/.env +0 -2
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/AUTHORS +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/COPYING +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/MANIFEST.in +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/README.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/Makefile +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/_static/js/gitter.js +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/api/gitlab.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/api/gitlab.v4.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/api-levels.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/api-usage-graphql.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/api-usage.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/changelog.md +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/cli-examples.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/cli-objects.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/cli-usage.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/conf.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/ext/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/ext/docstrings.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/ext/manager_tmpl.j2 +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/faq.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/access_requests.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/appearance.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/applications.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/badges.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/boards.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/branches.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/bulk_imports.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/ci_lint.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/cluster_agents.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/clusters.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/commits.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/deploy_keys.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/deploy_tokens.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/deployments.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/discussions.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/draft_notes.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/emojis.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/environments.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/epics.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/events.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/features.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/geo_nodes.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/group_access_tokens.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/groups.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/invitations.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/issues.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/iterations.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/job_token_scope.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/keys.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/labels.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/merge_request_approvals.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/merge_requests.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/merge_trains.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/messages.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/milestones.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/namespaces.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/notes.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/notifications.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/packages.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/pagesdomains.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/personal_access_tokens.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/pipelines_and_jobs.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/project_access_tokens.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/projects.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/protected_branches.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/protected_environments.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/protected_packages.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/releases.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/remote_mirrors.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/repositories.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/repository_tags.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/resource_groups.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/runners.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/search.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/secure_files.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/settings.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/sidekiq.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/snippets.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/statistics.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/system_hooks.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/templates.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/todos.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/topics.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/users.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/variables.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/wikis.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/index.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/make.bat +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/release-notes.rst +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/__main__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/_backends/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/_backends/graphql.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/_backends/protocol.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/_backends/requests_backend.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/base.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/cli.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/config.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/exceptions.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/py.typed +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/types.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/utils.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/cli.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/access_requests.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/appearance.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/applications.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/audit_events.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/award_emojis.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/badges.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/boards.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/branches.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/broadcast_messages.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/bulk_imports.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/ci_lint.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/cluster_agents.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/clusters.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/container_registry.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/custom_attributes.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/deploy_keys.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/deploy_tokens.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/deployments.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/discussions.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/draft_notes.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/environments.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/epics.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/events.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/export_import.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/features.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/geo_nodes.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/group_access_tokens.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/groups.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/hooks.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/integrations.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/invitations.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/iterations.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/job_token_scope.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/keys.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/ldap.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/members.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/merge_request_approvals.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/merge_trains.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/milestones.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/namespaces.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/notes.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/notification_settings.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/package_protection_rules.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/pages.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/personal_access_tokens.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/pipelines.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/project_access_tokens.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/push_rules.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/registry_protection_rules.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/releases.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/resource_groups.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/reviewers.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/runners.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/service_accounts.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/settings.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/sidekiq.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/statistics.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/tags.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/templates.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/todos.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/topics.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/triggers.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/users.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/variables.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/gitlab/v4/objects/wikis.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/pyproject.toml +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/python_gitlab.egg-info/dependency_links.txt +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/python_gitlab.egg-info/entry_points.txt +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/python_gitlab.egg-info/requires.txt +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/python_gitlab.egg-info/top_level.txt +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/requirements-docker.txt +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/setup.cfg +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/conftest.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_boards.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_branches.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_bulk_imports.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_current_user.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_deploy_keys.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_deploy_tokens.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_epics.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_graphql.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_groups.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_issues.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_keys.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_lazy_objects.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_merge_requests.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_packages.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_project_job_token_scope.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_push_rules.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_releases.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_services.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_statistics.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_topics.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_users.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_variables.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/api/test_wikis.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/cli/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/cli/conftest.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/cli/test_cli.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/cli/test_cli_packages.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/cli/test_cli_projects.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/cli/test_cli_repository.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/cli/test_cli_resource_access_tokens.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/cli/test_cli_users.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/cli/test_cli_v4.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/cli/test_cli_variables.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/ee-test.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/fixtures/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/fixtures/avatar.png +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/fixtures/create_license.rb +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/fixtures/docker.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/fixtures/invalid_auth.cfg +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/fixtures/invalid_version.cfg +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/fixtures/set_token.rb +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/functional/helpers.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/install/test_install.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/smoke/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/smoke/test_dists.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/_backends/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/_backends/test_requests_backend.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/base/test_rest_manager.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/base/test_rest_object.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/conftest.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/helpers.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/meta/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/meta/test_ensure_type_hints.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/meta/test_imports.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/meta/test_mro.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/mixins/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/mixins/test_meta_mixins.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/mixins/test_mixin_methods.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/mixins/test_object_mixins_attributes.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/__init__.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/conftest.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_appearance.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_applications.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_audit_events.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_badges.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_bridges.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_bulk_imports.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_ci_lint.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_cluster_agents.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_deploy_tokens.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_deployments.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_draft_notes.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_environments.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_group_access_tokens.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_groups.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_hooks.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_invitations.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_issues.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_iterations.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_job_token_scope.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_jobs.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_keys.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_members.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_merge_request_pipelines.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_merge_requests.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_merge_trains.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_package_protection_rules.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_packages.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_personal_access_tokens.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_pipeline_schedules.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_pipelines.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_project_access_tokens.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_project_import_export.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_project_merge_request_approvals.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_project_statistics.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_projects.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_registry_repositories.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_releases.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_remote_mirrors.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_repositories.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_resource_groups.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_resource_iteration_events.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_resource_label_events.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_resource_milestone_events.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_resource_state_events.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_runners.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_secure_files.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_services.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_snippets.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_statistics.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_submodules.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_templates.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_todos.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_topics.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_users.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/objects/test_variables.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/test_cli.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/test_config.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/test_exceptions.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/test_gitlab.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/test_gitlab_auth.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/test_graphql.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/test_retry.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/test_types.py +0 -0
- {python_gitlab-5.3.0 → python_gitlab-5.4.0}/tests/unit/test_utils.py +0 -0
@@ -1,6 +1,171 @@
|
|
1
1
|
# CHANGELOG
|
2
2
|
|
3
3
|
|
4
|
+
## v5.4.0 (2025-01-28)
|
5
|
+
|
6
|
+
### Bug Fixes
|
7
|
+
|
8
|
+
- **api**: Make type ignores more specific where possible
|
9
|
+
([`e3cb806`](https://github.com/python-gitlab/python-gitlab/commit/e3cb806dc368af0a495087531ee94892d3f240ce))
|
10
|
+
|
11
|
+
Instead of using absolute ignore `# type: ignore` use a more specific ignores like `# type:
|
12
|
+
ignore[override]`. This might help in the future where a new bug might be introduced and get
|
13
|
+
ignored by a general ignore comment but not a more specific one.
|
14
|
+
|
15
|
+
Signed-off-by: Igor Ponomarev <igor.ponomarev@collabora.com>
|
16
|
+
|
17
|
+
- **api**: Return the new commit when calling cherry_pick
|
18
|
+
([`de29503`](https://github.com/python-gitlab/python-gitlab/commit/de29503262b7626421f3bffeea3ff073e63e3865))
|
19
|
+
|
20
|
+
- **files**: Add optional ref parameter for cli project-file raw (python-gitlab#3032)
|
21
|
+
([`22f03bd`](https://github.com/python-gitlab/python-gitlab/commit/22f03bdc2bac92138225563415f5cf6fa36a5644))
|
22
|
+
|
23
|
+
The ef parameter was removed in python-gitlab v4.8.0. This will add ef back as an optional parameter
|
24
|
+
for the project-file raw cli command.
|
25
|
+
|
26
|
+
### Chores
|
27
|
+
|
28
|
+
- Fix missing space in deprecation message
|
29
|
+
([`ba75c31`](https://github.com/python-gitlab/python-gitlab/commit/ba75c31e4d13927b6a3ab0ce427800d94e5eefb4))
|
30
|
+
|
31
|
+
- Fix pytest deprecation
|
32
|
+
([`95db680`](https://github.com/python-gitlab/python-gitlab/commit/95db680d012d73e7e505ee85db7128050ff0db6e))
|
33
|
+
|
34
|
+
pytest has changed the function argument name to `start_path`
|
35
|
+
|
36
|
+
- Fix warning being generated
|
37
|
+
([`0eb5eb0`](https://github.com/python-gitlab/python-gitlab/commit/0eb5eb0505c5b837a2d767cfa256a25b64ceb48b))
|
38
|
+
|
39
|
+
The CI shows a warning. Use `get_all=False` to resolve issue.
|
40
|
+
|
41
|
+
- Resolve DeprecationWarning message in CI run
|
42
|
+
([`accd5aa`](https://github.com/python-gitlab/python-gitlab/commit/accd5aa757ba5215497c278da50d48f10ea5a258))
|
43
|
+
|
44
|
+
Catch the DeprecationWarning in our test, as we expect it.
|
45
|
+
|
46
|
+
- **ci**: Set a 30 minute timeout for 'functional' tests
|
47
|
+
([`e8d6953`](https://github.com/python-gitlab/python-gitlab/commit/e8d6953ec06dbbd817852207abbbc74eab8a27cf))
|
48
|
+
|
49
|
+
Currently the functional API test takes around 17 minutes to run. And the functional CLI test takes
|
50
|
+
around 12 minutes to run.
|
51
|
+
|
52
|
+
Occasionally a job gets stuck and will sit until the default 360 minutes job timeout occurs.
|
53
|
+
|
54
|
+
Now have a 30 minute timeout for the 'functional' tests.
|
55
|
+
|
56
|
+
- **deps**: Update all non-major dependencies
|
57
|
+
([`939505b`](https://github.com/python-gitlab/python-gitlab/commit/939505b9c143939ba1e52c5cb920d8aa36596e19))
|
58
|
+
|
59
|
+
- **deps**: Update all non-major dependencies
|
60
|
+
([`cbd4263`](https://github.com/python-gitlab/python-gitlab/commit/cbd4263194fcbad9d6c11926862691f8df0dea6d))
|
61
|
+
|
62
|
+
- **deps**: Update gitlab ([#3088](https://github.com/python-gitlab/python-gitlab/pull/3088),
|
63
|
+
[`9214b83`](https://github.com/python-gitlab/python-gitlab/commit/9214b8371652be2371823b6f3d531eeea78364c7))
|
64
|
+
|
65
|
+
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
|
66
|
+
|
67
|
+
- **deps**: Update gitlab/gitlab-ee docker tag to v17.7.1-ee.0
|
68
|
+
([#3082](https://github.com/python-gitlab/python-gitlab/pull/3082),
|
69
|
+
[`1e95944`](https://github.com/python-gitlab/python-gitlab/commit/1e95944119455875bd239752cdf0fe5cc27707ea))
|
70
|
+
|
71
|
+
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
|
72
|
+
|
73
|
+
- **deps**: Update mypy to 1.14 and resolve issues
|
74
|
+
([`671e711`](https://github.com/python-gitlab/python-gitlab/commit/671e711c341d28ae0bc61ccb12d2e986353473fd))
|
75
|
+
|
76
|
+
mypy 1.14 has a change to Enum Membership Semantics:
|
77
|
+
https://mypy.readthedocs.io/en/latest/changelog.html
|
78
|
+
|
79
|
+
Resolve the issues with Enum and typing, and update mypy to 1.14
|
80
|
+
|
81
|
+
- **test**: Prevent 'job_with_artifact' fixture running forever
|
82
|
+
([`e4673d8`](https://github.com/python-gitlab/python-gitlab/commit/e4673d8aeaf97b9ad5d2500e459526b4cf494547))
|
83
|
+
|
84
|
+
Previously the 'job_with_artifact' fixture could run forever. Now give it up to 60 seconds to
|
85
|
+
complete before failing.
|
86
|
+
|
87
|
+
### Continuous Integration
|
88
|
+
|
89
|
+
- Use gitlab-runner:v17.7.1 for the CI
|
90
|
+
([`2dda9dc`](https://github.com/python-gitlab/python-gitlab/commit/2dda9dc149668a99211daaa1981bb1f422c63880))
|
91
|
+
|
92
|
+
The `latest` gitlab-runner image does not have the `gitlab-runner` user and it causes our tests to
|
93
|
+
fail.
|
94
|
+
|
95
|
+
Closes: #3091
|
96
|
+
|
97
|
+
### Features
|
98
|
+
|
99
|
+
- **api**: Add argument that appends extra HTTP headers to a request
|
100
|
+
([`fb07b5c`](https://github.com/python-gitlab/python-gitlab/commit/fb07b5cfe1d986c3a7cd7879b11ecc43c75542b7))
|
101
|
+
|
102
|
+
Currently the only way to manipulate the headers for a request is to use `Gitlab.headers` attribute.
|
103
|
+
However, this makes it very concurrently unsafe because the `Gitlab` object can be shared between
|
104
|
+
multiple requests at the same time.
|
105
|
+
|
106
|
+
Instead add a new keyword argument `extra_headers` which will update the headers dictionary with new
|
107
|
+
values just before the request is sent.
|
108
|
+
|
109
|
+
For example, this can be used to download a part of a artifacts file using the `Range` header:
|
110
|
+
https://developer.mozilla.org/en-US/docs/Web/HTTP/Range_requests
|
111
|
+
|
112
|
+
Signed-off-by: Igor Ponomarev <igor.ponomarev@collabora.com>
|
113
|
+
|
114
|
+
- **api**: Add support for external status check
|
115
|
+
([`175b355`](https://github.com/python-gitlab/python-gitlab/commit/175b355d84d54a71f15fe3601c5275dc35984b9b))
|
116
|
+
|
117
|
+
- **api**: Narrow down return type of download methods using typing.overload
|
118
|
+
([`44fd9dc`](https://github.com/python-gitlab/python-gitlab/commit/44fd9dc1176a2c5529c45cc3186c0e775026175e))
|
119
|
+
|
120
|
+
Currently the download methods such as `ProjectJob.artifacts` have return type set to
|
121
|
+
`Optional[Union[bytes, Iterator[Any]]]` which means they return either `None` or `bytes` or
|
122
|
+
`Iterator[Any]`.
|
123
|
+
|
124
|
+
However, the actual return type is determined by the passed `streamed` and `iterator` arguments.
|
125
|
+
Using `@typing.overload` decorator it is possible to return a single type based on the passed
|
126
|
+
arguments.
|
127
|
+
|
128
|
+
Add overloads in the following order to all download methods:
|
129
|
+
|
130
|
+
1. If `streamed=False` and `iterator=False` return `bytes`. This is the default argument values
|
131
|
+
therefore it should be first as it will be used to lookup default arguments. 2. If `iterator=True`
|
132
|
+
return `Iterator[Any]`. This can be combined with both `streamed=True` and `streamed=False`. 3. If
|
133
|
+
`streamed=True` and `iterator=False` return `None`. In this case `action` argument can be set to a
|
134
|
+
callable that accepts `bytes`.
|
135
|
+
|
136
|
+
Signed-off-by: Igor Ponomarev <igor.ponomarev@collabora.com>
|
137
|
+
|
138
|
+
- **api**: Narrow down return type of ProjectFileManager.raw using typing.overload
|
139
|
+
([`36d9b24`](https://github.com/python-gitlab/python-gitlab/commit/36d9b24ff27d8df514c1beebd0fff8ad000369b7))
|
140
|
+
|
141
|
+
This is equivalent to the changes in 44fd9dc1176a2c5529c45cc3186c0e775026175e but for
|
142
|
+
`ProjectFileManager.raw` method that I must have missed in the original commit.
|
143
|
+
|
144
|
+
Signed-off-by: Igor Ponomarev <igor.ponomarev@collabora.com>
|
145
|
+
|
146
|
+
|
147
|
+
## v5.3.1 (2025-01-07)
|
148
|
+
|
149
|
+
### Bug Fixes
|
150
|
+
|
151
|
+
- **api**: Allow configuration of keep_base_url from file
|
152
|
+
([`f4f7d7a`](https://github.com/python-gitlab/python-gitlab/commit/f4f7d7a63716f072eb45db2c7f590db0435350f0))
|
153
|
+
|
154
|
+
- **registry-protection**: Fix api url
|
155
|
+
([`8c1aaa3`](https://github.com/python-gitlab/python-gitlab/commit/8c1aaa3f6a797caf7bd79a7da083eae56c6250ff))
|
156
|
+
|
157
|
+
See:
|
158
|
+
https://docs.gitlab.com/ee/api/container_repository_protection_rules.html#list-container-repository-protection-rules
|
159
|
+
|
160
|
+
### Chores
|
161
|
+
|
162
|
+
- Bump to 5.3.1
|
163
|
+
([`912e1a0`](https://github.com/python-gitlab/python-gitlab/commit/912e1a0620a96c56081ffec284c2cac871cb7626))
|
164
|
+
|
165
|
+
- **deps**: Update dependency jinja2 to v3.1.5 [security]
|
166
|
+
([`01d4194`](https://github.com/python-gitlab/python-gitlab/commit/01d41946cbb1a4e5f29752eac89239d635c2ec6f))
|
167
|
+
|
168
|
+
|
4
169
|
## v5.3.0 (2024-12-28)
|
5
170
|
|
6
171
|
### Chores
|
@@ -1,6 +1,6 @@
|
|
1
|
-
Metadata-Version: 2.
|
1
|
+
Metadata-Version: 2.2
|
2
2
|
Name: python-gitlab
|
3
|
-
Version: 5.
|
3
|
+
Version: 5.4.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>
|
@@ -211,3 +211,20 @@ on your own, such as for nested API responses and ``Union`` return types. For ex
|
|
211
211
|
|
212
212
|
if TYPE_CHECKING:
|
213
213
|
assert isinstance(license["plan"], str)
|
214
|
+
|
215
|
+
Per request HTTP headers override
|
216
|
+
---------------------------------
|
217
|
+
|
218
|
+
The ``extra_headers`` keyword argument can be used to add and override
|
219
|
+
the HTTP headers for a specific request. For example, it can be used do add ``Range``
|
220
|
+
header to download a part of artifacts archive:
|
221
|
+
|
222
|
+
.. code-block:: python
|
223
|
+
|
224
|
+
import gitlab
|
225
|
+
|
226
|
+
gl = gitlab.Gitlab(url, token)
|
227
|
+
project = gl.projects.get(1)
|
228
|
+
job = project.jobs.get(123)
|
229
|
+
|
230
|
+
artifacts = job.artifacts(extra_headers={"Range": "bytes=0-9"})
|
{python_gitlab-5.3.0 → python_gitlab-5.4.0}/docs/gl_objects/protected_container_repositories.rst
RENAMED
@@ -11,7 +11,7 @@ References
|
|
11
11
|
|
12
12
|
+ :class:`gitlab.v4.objects.ProjectRegistryRepositoryProtectionRuleRule`
|
13
13
|
+ :class:`gitlab.v4.objects.ProjectRegistryRepositoryProtectionRuleRuleManager`
|
14
|
-
+ :attr:`gitlab.v4.objects.Project.
|
14
|
+
+ :attr:`gitlab.v4.objects.Project.registry_protection_repository_rules`
|
15
15
|
|
16
16
|
* GitLab API: https://docs.gitlab.com/ee/api/container_repository_protection_rules.html
|
17
17
|
|
@@ -20,11 +20,11 @@ Examples
|
|
20
20
|
|
21
21
|
List the container registry protection rules for a project::
|
22
22
|
|
23
|
-
registry_rules = project.
|
23
|
+
registry_rules = project.registry_protection_repository_rules.list()
|
24
24
|
|
25
25
|
Create a container registry protection rule::
|
26
26
|
|
27
|
-
registry_rule = project.
|
27
|
+
registry_rule = project.registry_protection_repository_rules.create(
|
28
28
|
{
|
29
29
|
'repository_path_pattern': 'test/image',
|
30
30
|
'minimum_access_level_for_push': 'maintainer',
|
@@ -39,6 +39,6 @@ Update a container registry protection rule::
|
|
39
39
|
|
40
40
|
Delete a container registry protection rule::
|
41
41
|
|
42
|
-
registry_rule = project.
|
42
|
+
registry_rule = project.registry_protection_repository_rules.delete(registry_rule.id)
|
43
43
|
# or
|
44
44
|
registry_rule.delete()
|
@@ -0,0 +1,57 @@
|
|
1
|
+
#######################
|
2
|
+
External Status Checks
|
3
|
+
#######################
|
4
|
+
|
5
|
+
Manage external status checks for projects and merge requests.
|
6
|
+
|
7
|
+
|
8
|
+
Project external status checks
|
9
|
+
===============================
|
10
|
+
|
11
|
+
Reference
|
12
|
+
---------
|
13
|
+
|
14
|
+
* v4 API:
|
15
|
+
|
16
|
+
+ :class:`gitlab.v4.objects.ProjectExternalStatusCheck`
|
17
|
+
+ :class:`gitlab.v4.objects.ProjectExternalStatusCheckManager`
|
18
|
+
+ :attr:`gitlab.v4.objects.Project.external_status_checks`
|
19
|
+
|
20
|
+
* GitLab API: https://docs.gitlab.com/ee/api/status_checks.html
|
21
|
+
|
22
|
+
Examples
|
23
|
+
---------
|
24
|
+
|
25
|
+
List external status checks for a project::
|
26
|
+
|
27
|
+
status_checks = project.external_status_checks.list()
|
28
|
+
|
29
|
+
Create an external status check with shared secret::
|
30
|
+
|
31
|
+
status_checks = project.external_status_checks.create({
|
32
|
+
"name": "mr_blocker",
|
33
|
+
"external_url": "https://example.com/mr-status-check",
|
34
|
+
"shared_secret": "secret-string"
|
35
|
+
})
|
36
|
+
|
37
|
+
Create an external status check with shared secret for protected branches::
|
38
|
+
|
39
|
+
protected_branch = project.protectedbranches.get('main')
|
40
|
+
|
41
|
+
status_check = project.external_status_checks.create({
|
42
|
+
"name": "mr_blocker",
|
43
|
+
"external_url": "https://example.com/mr-status-check",
|
44
|
+
"shared_secret": "secret-string",
|
45
|
+
"protected_branch_ids": [protected_branch.id]
|
46
|
+
})
|
47
|
+
|
48
|
+
|
49
|
+
Update an external status check::
|
50
|
+
|
51
|
+
status_check.external_url = "https://example.com/mr-blocker"
|
52
|
+
status_check.save()
|
53
|
+
|
54
|
+
Delete an external status check::
|
55
|
+
|
56
|
+
status_check.delete(status_check_id)
|
57
|
+
|
@@ -303,6 +303,7 @@ class Gitlab:
|
|
303
303
|
order_by=config.order_by,
|
304
304
|
user_agent=config.user_agent,
|
305
305
|
retry_transient_errors=config.retry_transient_errors,
|
306
|
+
keep_base_url=config.keep_base_url,
|
306
307
|
**kwargs,
|
307
308
|
)
|
308
309
|
|
@@ -653,6 +654,7 @@ class Gitlab:
|
|
653
654
|
obey_rate_limit: bool = True,
|
654
655
|
retry_transient_errors: Optional[bool] = None,
|
655
656
|
max_retries: int = 10,
|
657
|
+
extra_headers: Optional[Dict[str, Any]] = None,
|
656
658
|
**kwargs: Any,
|
657
659
|
) -> requests.Response:
|
658
660
|
"""Make an HTTP request to the Gitlab server.
|
@@ -674,6 +676,7 @@ class Gitlab:
|
|
674
676
|
or 52x responses. Defaults to False.
|
675
677
|
max_retries: Max retries after 429 or transient errors,
|
676
678
|
set to -1 to retry forever. Defaults to 10.
|
679
|
+
extra_headers: Add and override HTTP headers for the request.
|
677
680
|
**kwargs: Extra options to send to the server (e.g. sudo)
|
678
681
|
|
679
682
|
Returns:
|
@@ -720,6 +723,9 @@ class Gitlab:
|
|
720
723
|
send_data = self._backend.prepare_send_data(files, post_data, raw)
|
721
724
|
opts["headers"]["Content-type"] = send_data.content_type
|
722
725
|
|
726
|
+
if extra_headers is not None:
|
727
|
+
opts["headers"].update(extra_headers)
|
728
|
+
|
723
729
|
retry = utils.Retry(
|
724
730
|
max_retries=max_retries,
|
725
731
|
obey_rate_limit=obey_rate_limit,
|
@@ -9,83 +9,83 @@ class GitlabEnum(str, Enum):
|
|
9
9
|
|
10
10
|
# https://gitlab.com/gitlab-org/gitlab/-/blob/e97357824bedf007e75f8782259fe07435b64fbb/lib/gitlab/access.rb#L12-18
|
11
11
|
class AccessLevel(IntEnum):
|
12
|
-
NO_ACCESS
|
13
|
-
MINIMAL_ACCESS
|
14
|
-
GUEST
|
15
|
-
PLANNER
|
16
|
-
REPORTER
|
17
|
-
DEVELOPER
|
18
|
-
MAINTAINER
|
19
|
-
OWNER
|
20
|
-
ADMIN
|
12
|
+
NO_ACCESS = 0
|
13
|
+
MINIMAL_ACCESS = 5
|
14
|
+
GUEST = 10
|
15
|
+
PLANNER = 15
|
16
|
+
REPORTER = 20
|
17
|
+
DEVELOPER = 30
|
18
|
+
MAINTAINER = 40
|
19
|
+
OWNER = 50
|
20
|
+
ADMIN = 60
|
21
21
|
|
22
22
|
|
23
23
|
# https://gitlab.com/gitlab-org/gitlab/-/blob/e97357824bedf007e75f8782259fe07435b64fbb/lib/gitlab/visibility_level.rb#L23-25
|
24
24
|
class Visibility(GitlabEnum):
|
25
|
-
PRIVATE
|
26
|
-
INTERNAL
|
27
|
-
PUBLIC
|
25
|
+
PRIVATE = "private"
|
26
|
+
INTERNAL = "internal"
|
27
|
+
PUBLIC = "public"
|
28
28
|
|
29
29
|
|
30
30
|
class NotificationLevel(GitlabEnum):
|
31
|
-
DISABLED
|
32
|
-
PARTICIPATING
|
33
|
-
WATCH
|
34
|
-
GLOBAL
|
35
|
-
MENTION
|
36
|
-
CUSTOM
|
31
|
+
DISABLED = "disabled"
|
32
|
+
PARTICIPATING = "participating"
|
33
|
+
WATCH = "watch"
|
34
|
+
GLOBAL = "global"
|
35
|
+
MENTION = "mention"
|
36
|
+
CUSTOM = "custom"
|
37
37
|
|
38
38
|
|
39
39
|
# https://gitlab.com/gitlab-org/gitlab/-/blob/e97357824bedf007e75f8782259fe07435b64fbb/app/views/search/_category.html.haml#L10-37
|
40
40
|
class SearchScope(GitlabEnum):
|
41
41
|
# all scopes (global, group and project)
|
42
|
-
PROJECTS
|
43
|
-
ISSUES
|
44
|
-
MERGE_REQUESTS
|
45
|
-
MILESTONES
|
46
|
-
WIKI_BLOBS
|
47
|
-
COMMITS
|
48
|
-
BLOBS
|
49
|
-
USERS
|
42
|
+
PROJECTS = "projects"
|
43
|
+
ISSUES = "issues"
|
44
|
+
MERGE_REQUESTS = "merge_requests"
|
45
|
+
MILESTONES = "milestones"
|
46
|
+
WIKI_BLOBS = "wiki_blobs"
|
47
|
+
COMMITS = "commits"
|
48
|
+
BLOBS = "blobs"
|
49
|
+
USERS = "users"
|
50
50
|
|
51
51
|
# specific global scope
|
52
|
-
GLOBAL_SNIPPET_TITLES
|
52
|
+
GLOBAL_SNIPPET_TITLES = "snippet_titles"
|
53
53
|
|
54
54
|
# specific project scope
|
55
|
-
PROJECT_NOTES
|
55
|
+
PROJECT_NOTES = "notes"
|
56
56
|
|
57
57
|
|
58
58
|
# https://docs.gitlab.com/ee/api/merge_requests.html#merge-status
|
59
59
|
class DetailedMergeStatus(GitlabEnum):
|
60
60
|
# possible values for the detailed_merge_status field of Merge Requests
|
61
|
-
BLOCKED_STATUS
|
62
|
-
BROKEN_STATUS
|
63
|
-
CHECKING
|
64
|
-
UNCHECKED
|
65
|
-
CI_MUST_PASS
|
66
|
-
CI_STILL_RUNNING
|
67
|
-
DISCUSSIONS_NOT_RESOLVED
|
68
|
-
DRAFT_STATUS
|
69
|
-
EXTERNAL_STATUS_CHECKS
|
70
|
-
MERGEABLE
|
71
|
-
NOT_APPROVED
|
72
|
-
NOT_OPEN
|
73
|
-
POLICIES_DENIED
|
61
|
+
BLOCKED_STATUS = "blocked_status"
|
62
|
+
BROKEN_STATUS = "broken_status"
|
63
|
+
CHECKING = "checking"
|
64
|
+
UNCHECKED = "unchecked"
|
65
|
+
CI_MUST_PASS = "ci_must_pass"
|
66
|
+
CI_STILL_RUNNING = "ci_still_running"
|
67
|
+
DISCUSSIONS_NOT_RESOLVED = "discussions_not_resolved"
|
68
|
+
DRAFT_STATUS = "draft_status"
|
69
|
+
EXTERNAL_STATUS_CHECKS = "external_status_checks"
|
70
|
+
MERGEABLE = "mergeable"
|
71
|
+
NOT_APPROVED = "not_approved"
|
72
|
+
NOT_OPEN = "not_open"
|
73
|
+
POLICIES_DENIED = "policies_denied"
|
74
74
|
|
75
75
|
|
76
76
|
# https://docs.gitlab.com/ee/api/pipelines.html
|
77
77
|
class PipelineStatus(GitlabEnum):
|
78
|
-
CREATED
|
79
|
-
WAITING_FOR_RESOURCE
|
80
|
-
PREPARING
|
81
|
-
PENDING
|
82
|
-
RUNNING
|
83
|
-
SUCCESS
|
84
|
-
FAILED
|
85
|
-
CANCELED
|
86
|
-
SKIPPED
|
87
|
-
MANUAL
|
88
|
-
SCHEDULED
|
78
|
+
CREATED = "created"
|
79
|
+
WAITING_FOR_RESOURCE = "waiting_for_resource"
|
80
|
+
PREPARING = "preparing"
|
81
|
+
PENDING = "pending"
|
82
|
+
RUNNING = "running"
|
83
|
+
SUCCESS = "success"
|
84
|
+
FAILED = "failed"
|
85
|
+
CANCELED = "canceled"
|
86
|
+
SKIPPED = "skipped"
|
87
|
+
MANUAL = "manual"
|
88
|
+
SCHEDULED = "scheduled"
|
89
89
|
|
90
90
|
|
91
91
|
DEFAULT_URL: str = "https://gitlab.com"
|
@@ -6,7 +6,9 @@ from typing import (
|
|
6
6
|
Dict,
|
7
7
|
Iterator,
|
8
8
|
List,
|
9
|
+
Literal,
|
9
10
|
Optional,
|
11
|
+
overload,
|
10
12
|
Tuple,
|
11
13
|
Type,
|
12
14
|
TYPE_CHECKING,
|
@@ -612,6 +614,39 @@ class DownloadMixin(_RestObjectBase):
|
|
612
614
|
_updated_attrs: Dict[str, Any]
|
613
615
|
manager: base.RESTManager
|
614
616
|
|
617
|
+
@overload
|
618
|
+
def download(
|
619
|
+
self,
|
620
|
+
streamed: Literal[False] = False,
|
621
|
+
action: None = None,
|
622
|
+
chunk_size: int = 1024,
|
623
|
+
*,
|
624
|
+
iterator: Literal[False] = False,
|
625
|
+
**kwargs: Any,
|
626
|
+
) -> bytes: ...
|
627
|
+
|
628
|
+
@overload
|
629
|
+
def download(
|
630
|
+
self,
|
631
|
+
streamed: bool = False,
|
632
|
+
action: None = None,
|
633
|
+
chunk_size: int = 1024,
|
634
|
+
*,
|
635
|
+
iterator: Literal[True] = True,
|
636
|
+
**kwargs: Any,
|
637
|
+
) -> Iterator[Any]: ...
|
638
|
+
|
639
|
+
@overload
|
640
|
+
def download(
|
641
|
+
self,
|
642
|
+
streamed: Literal[True] = True,
|
643
|
+
action: Optional[Callable[[bytes], None]] = None,
|
644
|
+
chunk_size: int = 1024,
|
645
|
+
*,
|
646
|
+
iterator: Literal[False] = False,
|
647
|
+
**kwargs: Any,
|
648
|
+
) -> None: ...
|
649
|
+
|
615
650
|
@cli.register_custom_action(cls_names=("GroupExport", "ProjectExport"))
|
616
651
|
@exc.on_http_error(exc.GitlabGetError)
|
617
652
|
def download(
|
@@ -55,8 +55,8 @@ from .pipelines import *
|
|
55
55
|
from .project_access_tokens import *
|
56
56
|
from .projects import *
|
57
57
|
from .push_rules import *
|
58
|
+
from .registry_protection_repository_rules import *
|
58
59
|
from .registry_protection_rules import *
|
59
|
-
from .registry_repository_protection_rules import *
|
60
60
|
from .releases import *
|
61
61
|
from .repositories import *
|
62
62
|
from .resource_groups import *
|
@@ -68,6 +68,7 @@ from .settings import *
|
|
68
68
|
from .sidekiq import *
|
69
69
|
from .snippets import *
|
70
70
|
from .statistics import *
|
71
|
+
from .status_checks import *
|
71
72
|
from .tags import *
|
72
73
|
from .templates import *
|
73
74
|
from .todos import *
|
@@ -3,7 +3,16 @@ GitLab API:
|
|
3
3
|
https://docs.gitlab.com/ee/api/job_artifacts.html
|
4
4
|
"""
|
5
5
|
|
6
|
-
from typing import
|
6
|
+
from typing import (
|
7
|
+
Any,
|
8
|
+
Callable,
|
9
|
+
Iterator,
|
10
|
+
Literal,
|
11
|
+
Optional,
|
12
|
+
overload,
|
13
|
+
TYPE_CHECKING,
|
14
|
+
Union,
|
15
|
+
)
|
7
16
|
|
8
17
|
import requests
|
9
18
|
|
@@ -43,6 +52,45 @@ class ProjectArtifactManager(RESTManager):
|
|
43
52
|
assert path is not None
|
44
53
|
self.gitlab.http_delete(path, **kwargs)
|
45
54
|
|
55
|
+
@overload
|
56
|
+
def download(
|
57
|
+
self,
|
58
|
+
ref_name: str,
|
59
|
+
job: str,
|
60
|
+
streamed: Literal[False] = False,
|
61
|
+
action: None = None,
|
62
|
+
chunk_size: int = 1024,
|
63
|
+
*,
|
64
|
+
iterator: Literal[False] = False,
|
65
|
+
**kwargs: Any,
|
66
|
+
) -> bytes: ...
|
67
|
+
|
68
|
+
@overload
|
69
|
+
def download(
|
70
|
+
self,
|
71
|
+
ref_name: str,
|
72
|
+
job: str,
|
73
|
+
streamed: bool = False,
|
74
|
+
action: None = None,
|
75
|
+
chunk_size: int = 1024,
|
76
|
+
*,
|
77
|
+
iterator: Literal[True] = True,
|
78
|
+
**kwargs: Any,
|
79
|
+
) -> Iterator[Any]: ...
|
80
|
+
|
81
|
+
@overload
|
82
|
+
def download(
|
83
|
+
self,
|
84
|
+
ref_name: str,
|
85
|
+
job: str,
|
86
|
+
streamed: Literal[True] = True,
|
87
|
+
action: Optional[Callable[[bytes], None]] = None,
|
88
|
+
chunk_size: int = 1024,
|
89
|
+
*,
|
90
|
+
iterator: Literal[False] = False,
|
91
|
+
**kwargs: Any,
|
92
|
+
) -> None: ...
|
93
|
+
|
46
94
|
@cli.register_custom_action(
|
47
95
|
cls_names="ProjectArtifactManager",
|
48
96
|
required=("ref_name", "job"),
|
@@ -94,6 +142,48 @@ class ProjectArtifactManager(RESTManager):
|
|
94
142
|
result, streamed, action, chunk_size, iterator=iterator
|
95
143
|
)
|
96
144
|
|
145
|
+
@overload
|
146
|
+
def raw(
|
147
|
+
self,
|
148
|
+
ref_name: str,
|
149
|
+
artifact_path: str,
|
150
|
+
job: str,
|
151
|
+
streamed: Literal[False] = False,
|
152
|
+
action: None = None,
|
153
|
+
chunk_size: int = 1024,
|
154
|
+
*,
|
155
|
+
iterator: Literal[False] = False,
|
156
|
+
**kwargs: Any,
|
157
|
+
) -> bytes: ...
|
158
|
+
|
159
|
+
@overload
|
160
|
+
def raw(
|
161
|
+
self,
|
162
|
+
ref_name: str,
|
163
|
+
artifact_path: str,
|
164
|
+
job: str,
|
165
|
+
streamed: bool = False,
|
166
|
+
action: None = None,
|
167
|
+
chunk_size: int = 1024,
|
168
|
+
*,
|
169
|
+
iterator: Literal[True] = True,
|
170
|
+
**kwargs: Any,
|
171
|
+
) -> Iterator[Any]: ...
|
172
|
+
|
173
|
+
@overload
|
174
|
+
def raw(
|
175
|
+
self,
|
176
|
+
ref_name: str,
|
177
|
+
artifact_path: str,
|
178
|
+
job: str,
|
179
|
+
streamed: Literal[True] = True,
|
180
|
+
action: Optional[Callable[[bytes], None]] = None,
|
181
|
+
chunk_size: int = 1024,
|
182
|
+
*,
|
183
|
+
iterator: Literal[False] = False,
|
184
|
+
**kwargs: Any,
|
185
|
+
) -> None: ...
|
186
|
+
|
97
187
|
@cli.register_custom_action(
|
98
188
|
cls_names="ProjectArtifactManager",
|
99
189
|
required=("ref_name", "artifact_path", "job"),
|