{"id":13449367,"url":"https://github.com/python-gitlab/python-gitlab","last_synced_at":"2026-01-28T03:28:19.613Z","repository":{"id":6829359,"uuid":"8077625","full_name":"python-gitlab/python-gitlab","owner":"python-gitlab","description":"A python wrapper for the GitLab API.","archived":false,"fork":false,"pushed_at":"2025-12-11T00:57:33.000Z","size":6117,"stargazers_count":2419,"open_issues_count":44,"forks_count":675,"subscribers_count":46,"default_branch":"main","last_synced_at":"2025-12-11T14:19:24.221Z","etag":null,"topics":["api","gitlab","gitlab-api","gitlab-ci","gitlab-cli","hacktoberfest","python"],"latest_commit_sha":null,"homepage":"https://python-gitlab.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/python-gitlab.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.rst","funding":null,"license":"COPYING","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":"AUTHORS","dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2013-02-07T17:23:16.000Z","updated_at":"2025-12-11T00:55:25.000Z","dependencies_parsed_at":"2023-09-28T18:15:04.529Z","dependency_job_id":"4d6d4f93-4b37-46de-9376-d68f3b3d0c71","html_url":"https://github.com/python-gitlab/python-gitlab","commit_stats":{"total_commits":2439,"total_committers":280,"mean_commits":8.710714285714285,"dds":0.7109471094710946,"last_synced_commit":"a2b8c8ccfb5d4fa4d134300861a3bfb0b10246ca"},"previous_names":["gpocentek/python-gitlab"],"tags_count":117,"template":false,"template_full_name":null,"purl":"pkg:github/python-gitlab/python-gitlab","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/python-gitlab%2Fpython-gitlab","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/python-gitlab%2Fpython-gitlab/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/python-gitlab%2Fpython-gitlab/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/python-gitlab%2Fpython-gitlab/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/python-gitlab","download_url":"https://codeload.github.com/python-gitlab/python-gitlab/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/python-gitlab%2Fpython-gitlab/sbom","scorecard":{"id":752182,"data":{"date":"2025-08-11","repo":{"name":"github.com/python-gitlab/python-gitlab","commit":"aaed51cdec65c8acabe8b9a39fd18c7e1e48519c"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":6.6,"checks":[{"name":"Maintained","score":10,"reason":"30 commit(s) and 3 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":8,"reason":"Found 13/15 approved changesets -- score normalized to 8","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/docs.yml:1","Warn: no topLevel permission defined: .github/workflows/lint.yml:1","Warn: no topLevel permission defined: .github/workflows/pre_commit.yml:1","Warn: no topLevel permission defined: .github/workflows/release.yml:1","Warn: no topLevel permission defined: .github/workflows/rerun-test.yml:1","Warn: no topLevel permission defined: .github/workflows/test.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: COPYING:0","Info: FSF or OSI recognized license: GNU Lesser General Public License v3.0: COPYING:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/docs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/docs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/docs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:42: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/docs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:25: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/lint.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/lint.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/lint.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/lock.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/lock.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pre_commit.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/pre_commit.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pre_commit.yml:33: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/pre_commit.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/rerun-test.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/rerun-test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/stale.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/stale.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:134: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:136: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:139: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:53: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:70: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:72: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:82: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:92: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:94: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/test.yml:105: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:116: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:117: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/test.yml:125: update your workflow using https://app.stepsecurity.io/secureworkflow/python-gitlab/python-gitlab/test.yml/main?enable=pin","Warn: containerImage not pinned by hash: Dockerfile:2","Warn: containerImage not pinned by hash: Dockerfile:8","Warn: pipCommand not pinned by hash: Dockerfile:6","Warn: pipCommand not pinned by hash: Dockerfile:14","Warn: pipCommand not pinned by hash: Dockerfile:15-16","Warn: pipCommand not pinned by hash: .github/workflows/docs.yml:32","Warn: pipCommand not pinned by hash: .github/workflows/docs.yml:47","Warn: pipCommand not pinned by hash: .github/workflows/lint.yml:32","Warn: pipCommand not pinned by hash: .github/workflows/pre_commit.yml:38","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:77","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:99","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:122","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:145","Warn: pipCommand not pinned by hash: .github/workflows/test.yml:58","Info:   0 out of  22 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   7 third-party GitHubAction dependencies pinned","Info:   0 out of   2 containerImage dependencies pinned","Info:   0 out of  12 pipCommand dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release.yml:9"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 28 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-22T20:40:18.379Z","repository_id":6829359,"created_at":"2025-08-22T20:40:18.379Z","updated_at":"2025-08-22T20:40:18.379Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":27672046,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-11T02:00:11.302Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["api","gitlab","gitlab-api","gitlab-ci","gitlab-cli","hacktoberfest","python"],"created_at":"2024-07-31T06:00:36.489Z","updated_at":"2025-12-11T22:47:39.852Z","avatar_url":"https://github.com/python-gitlab.png","language":"Python","readme":"python-gitlab\n=============\n\n.. image:: https://github.com/python-gitlab/python-gitlab/workflows/Test/badge.svg\n   :target: https://github.com/python-gitlab/python-gitlab/actions\n\n.. image:: https://badge.fury.io/py/python-gitlab.svg\n   :target: https://badge.fury.io/py/python-gitlab\n\n.. image:: https://readthedocs.org/projects/python-gitlab/badge/?version=latest\n   :target: https://python-gitlab.readthedocs.org/en/latest/?badge=latest\n\n.. image:: https://codecov.io/github/python-gitlab/python-gitlab/coverage.svg?branch=main\n    :target: https://codecov.io/github/python-gitlab/python-gitlab?branch=main\n\n.. image:: https://img.shields.io/pypi/pyversions/python-gitlab.svg\n   :target: https://pypi.python.org/pypi/python-gitlab\n\n.. image:: https://img.shields.io/gitter/room/python-gitlab/Lobby.svg\n   :target: https://gitter.im/python-gitlab/Lobby\n\n.. image:: https://img.shields.io/badge/code%20style-black-000000.svg\n    :target: https://github.com/python/black\n\n.. image:: https://img.shields.io/github/license/python-gitlab/python-gitlab\n   :target: https://github.com/python-gitlab/python-gitlab/blob/main/COPYING\n\n``python-gitlab`` is a Python package providing access to the GitLab APIs.\n\nIt includes a client for GitLab's v4 REST API, synchronous and asynchronous GraphQL API\nclients, as well as a CLI tool (``gitlab``) wrapping REST API endpoints.\n\n.. _features:\n\nFeatures\n--------\n\n``python-gitlab`` enables you to:\n\n* write Pythonic code to manage your GitLab resources.\n* pass arbitrary parameters to the GitLab API. Simply follow GitLab's docs\n  on what parameters are available.\n* use a synchronous or asynchronous client when using the GraphQL API.\n* access arbitrary endpoints as soon as they are available on GitLab, by using\n  lower-level API methods.\n* use persistent requests sessions for authentication, proxy and certificate handling.\n* handle smart retries on network and server errors, with rate-limit handling.\n* flexible handling of paginated responses, including lazy iterators.\n* automatically URL-encode paths and parameters where needed.\n* automatically convert some complex data structures to API attribute types\n* merge configuration from config files, environment variables and arguments.\n\nInstallation\n------------\n\nAs of 7.0.0, ``python-gitlab`` is compatible with Python 3.10+.\n\nUse ``pip`` to install the latest stable version of ``python-gitlab``:\n\n.. code-block:: console\n\n   $ pip install --upgrade python-gitlab\n\nThe current development version is available on both `GitHub.com\n\u003chttps://github.com/python-gitlab/python-gitlab\u003e`__ and `GitLab.com\n\u003chttps://gitlab.com/python-gitlab/python-gitlab\u003e`__, and can be\ninstalled directly from the git repository:\n\n.. code-block:: console\n\n   $ pip install git+https://github.com/python-gitlab/python-gitlab.git\n\nFrom GitLab:\n\n.. code-block:: console\n\n   $ pip install git+https://gitlab.com/python-gitlab/python-gitlab.git\n\nUsing the docker images\n-----------------------\n\n``python-gitlab`` provides Docker images in two flavors, based on the Alpine and Debian slim\npython `base images \u003chttps://hub.docker.com/_/python\u003e`__. The default tag is ``alpine``,\nbut you can explicitly use the alias (see below).\n\nThe alpine image is smaller, but you may want to use the Debian-based slim tag (currently \nbased on ``-slim-bullseye``) if you are running into issues or need a more complete environment\nwith a bash shell, such as in CI jobs.\n\nThe images are published on the GitLab registry, for example:\n\n* ``registry.gitlab.com/python-gitlab/python-gitlab:latest`` (latest, alpine alias)\n* ``registry.gitlab.com/python-gitlab/python-gitlab:alpine`` (latest alpine)\n* ``registry.gitlab.com/python-gitlab/python-gitlab:slim-bullseye`` (latest slim-bullseye)\n* ``registry.gitlab.com/python-gitlab/python-gitlab:v3.2.0`` (alpine alias)\n* ``registry.gitlab.com/python-gitlab/python-gitlab:v3.2.0-alpine``\n* ``registry.gitlab.com/python-gitlab/python-gitlab:v3.2.0-slim-bullseye``\n\nYou can run the Docker image directly from the GitLab registry:\n\n.. code-block:: console\n\n   $ docker run -it --rm registry.gitlab.com/python-gitlab/python-gitlab:latest \u003ccommand\u003e ...\n\nFor example, to get a project on GitLab.com (without authentication):\n\n.. code-block:: console\n\n   $ docker run -it --rm registry.gitlab.com/python-gitlab/python-gitlab:latest project get --id gitlab-org/gitlab\n\nYou can also mount your own config file:\n\n.. code-block:: console\n\n   $ docker run -it --rm -v /path/to/python-gitlab.cfg:/etc/python-gitlab.cfg registry.gitlab.com/python-gitlab/python-gitlab:latest \u003ccommand\u003e ...\n\nUsage inside GitLab CI\n~~~~~~~~~~~~~~~~~~~~~~\n\nIf you want to use the Docker image directly inside your GitLab CI as an ``image``, you will need to override\nthe ``entrypoint``, `as noted in the official GitLab documentation \u003chttps://docs.gitlab.com/ee/ci/docker/using_docker_images.html#override-the-entrypoint-of-an-image\u003e`__:\n\n.. code-block:: yaml\n\n   Job Name:\n      image:\n         name: registry.gitlab.com/python-gitlab/python-gitlab:latest\n         entrypoint: [\"\"]\n      before_script:\n         gitlab --version\n      script:\n         gitlab \u003ccommand\u003e\n\nBuilding the image\n~~~~~~~~~~~~~~~~~~\n\nTo build your own image from this repository, run:\n\n.. code-block:: console\n\n   $ docker build -t python-gitlab:latest .\n\nRun your own image:\n\n.. code-block:: console\n\n   $ docker run -it --rm python-gitlab:latest \u003ccommand\u003e ...\n\nBuild a Debian slim-based image:\n\n.. code-block:: console\n\n   $ docker build -t python-gitlab:latest --build-arg PYTHON_FLAVOR=slim-bullseye .\n\nBug reports\n-----------\n\nPlease report bugs and feature requests at\nhttps://github.com/python-gitlab/python-gitlab/issues.\n\nGitter Community Chat\n---------------------\n\nWe have a `gitter \u003chttps://gitter.im/python-gitlab/Lobby\u003e`_ community chat\navailable at https://gitter.im/python-gitlab/Lobby, which you can also\ndirectly access via the Open Chat button below.\n\nIf you have a simple question, the community might be able to help already,\nwithout you opening an issue. If you regularly use python-gitlab, we also\nencourage you to join and participate. You might discover new ideas and\nuse cases yourself!\n\nDocumentation\n-------------\n\nThe full documentation for CLI and API is available on `readthedocs\n\u003chttp://python-gitlab.readthedocs.org/en/stable/\u003e`_.\n\nBuild the docs\n~~~~~~~~~~~~~~\n\nWe use ``tox`` to manage our environment and build the documentation::\n\n    pip install tox\n    tox -e docs\n\nContributing\n------------\n\nFor guidelines for contributing to ``python-gitlab``, refer to `CONTRIBUTING.rst \u003chttps://github.com/python-gitlab/python-gitlab/blob/main/CONTRIBUTING.rst\u003e`_.\n","funding_links":[],"categories":["Python","Development Environment","api"],"sub_categories":["Python","Version Control"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpython-gitlab%2Fpython-gitlab","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpython-gitlab%2Fpython-gitlab","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpython-gitlab%2Fpython-gitlab/lists"}