[build-system] requires = ["setuptools>=61.0.0"] build-backend = "setuptools.build_meta" [project] name = "python-gitlab" description="A python wrapper for the GitLab API" readme = "README.rst" authors = [ {name = "Gauvain Pocentek", email= "gauvain@pocentek.net"} ] maintainers = [ {name = "John Villalovos", email="john@sodarock.com"}, {name = "Max Wittig", email="max.wittig@siemens.com"}, {name = "Nejc Habjan", email="nejc.habjan@siemens.com"}, {name = "Roger Meier", email="r.meier@siemens.com"} ] requires-python = ">=3.7.0" dependencies = [ "requests>=2.25.0", "requests-toolbelt>=0.9.1" ] classifiers = [ "Development Status :: 5 - Production/Stable", "Environment :: Console", "Intended Audience :: System Administrators", "License :: OSI Approved :: GNU Lesser General Public License v3 (LGPLv3)", "Natural Language :: English", "Operating System :: POSIX", "Operating System :: Microsoft :: Windows", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10" ] keywords = ["api", "client", "gitlab", "python", "python-gitlab", "wrapper"] license = {file = "COPYING"} dynamic = ["version"] [project.optional-dependencies] autocompletion = ["argcomplete>=1.10.0,<3"] yaml = ["PyYaml>=5.2"] [project.scripts] gitlab = "gitlab.cli:main" [project.urls] Homepage = "https://github.com/python-gitlab/python-gitlab" Changelog = "https://github.com/python-gitlab/python-gitlab/blob/main/CHANGELOG.md" Documentation = "https://python-gitlab.readthedocs.io" Source = "https://github.com/python-gitlab/python-gitlab" [tool.setuptools.packages.find] exclude = ["docs*", "tests*"] [tool.setuptools.dynamic] version = { attr = "gitlab._version.__version__" } [tool.isort] profile = "black" multi_line_output = 3 order_by_type = false [tool.mypy] files = "." exclude = "build/.*" strict = true [[tool.mypy.overrides]] # Overrides for currently untyped modules module = [ "docs.*", "docs.ext.*", "tests.*", "tests.functional.*", "tests.functional.api.*", "tests.unit.*" ] ignore_errors = true [tool.semantic_release] branch = "main" build_command = "pip install build && python -m build" version_variable = "gitlab/_version.py:__version__" commit_subject = "chore: release v{version}" commit_message = "" [tool.pylint.messages_control] max-line-length = 88 jobs = 0 # Use auto-detected number of multiple processes to speed up Pylint. # TODO(jlvilla): Work on removing these disables over time. disable = [ "arguments-differ", "arguments-renamed", "broad-except", "cyclic-import", "duplicate-code", "import-outside-toplevel", "invalid-name", "missing-class-docstring", "missing-function-docstring", "missing-module-docstring", "protected-access", "redefined-builtin", "signature-differs", "too-few-public-methods", "too-many-ancestors", "too-many-arguments", "too-many-branches", "too-many-instance-attributes", "too-many-lines", "too-many-locals", "too-many-statements", "unsubscriptable-object", ] [tool.pytest.ini_options] xfail_strict = true # If 'log_cli=True' the following apply # NOTE: If set 'log_cli_level' to 'DEBUG' will show a log of all of the HTTP requests # made in functional tests. log_cli_level = "INFO" log_cli_format = "%(asctime)s.%(msecs)03d [%(levelname)8s] (%(filename)s:%(funcName)s:L%(lineno)s) %(message)s" log_cli_date_format = "%Y-%m-%d %H:%M:%S"