codegenerator/pyproject.toml
Artem Goncharov e3dda1cbc3 Adopt uv instead of pip
- fix pyproject.toml file name (causing few reformats missed previously)
- extend pyproject.toml with the info from setup.cfg to make uv work
- introduce uv and start using it inside tox
- fix unittest that started failing due to that change

Change-Id: I461ffc9fee39085f795ced07b7d00ebde28a6034
2025-04-03 17:03:47 +02:00

106 lines
2.8 KiB
TOML

[project]
name = "openstack-codegenerator"
description = "Generator for OpenStack stuff"
authors = [
{name = "Artem Goncharov"},
{email="openstack-discuss@lists.openstack.org"}
]
readme = {file = "README.rst", content-type = "text/x-rst"}
license = {text = "Apache-2.0"}
dynamic = ["version"]
dependencies = [
"Jinja2>=3.0", # BSD
"jsonref>=1.0", # MIT
"openapi_core>=0.17", # BSD
"pydantic>=2.6", # MIT
"ruamel.yaml>=0.18", # MIT
"jsonschema>=4.19", # MIT
"beautifulsoup4>=4.0", # MIT
# convert html into markdown
"markdownify>=0.11", # MIT
# wrap markdown when rendering
"mdformat>=0.7", # MIT
# Get sphinx docstrings from source code
"sphinx>=4.0.0", # BSD
# Convert rst docstrings to html (openapi)
"docutils>=0.20", # MIT
"wsgi-intercept>=1.13", # MIT
"wsme>=0.12", # MIT
"oslotest>=5.0.0", # Apache-2.0
"openstacksdk>=2.0", # Apache-2.0
]
requires-python = ">=3.10"
classifiers = [
"Environment :: OpenStack",
"Intended Audience :: Information Technology",
"Intended Audience :: System Administrators",
"License :: OSI Approved :: Apache Software License",
"Operating System :: POSIX :: Linux",
"Programming Language :: Python",
"Programming Language :: Python :: 3",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
# Codegenerator is currently not intended to be uploaded to pypi
"Private :: Do Not Upload",
]
[project.optional-dependencies]
test = [
# pip is necessary since siblings installation job uses it
"pip", # Apache-2.0
"flake8-import-order==0.18.2", # LGPLv3
"stestr>=1.0.0" # Apache-2.0]
]
block-storage = ["cinder>=23.0"]
compute = ["nova>=28.0"]
identity = ["keystone>=23.0"]
image = ["glance>=27.0"]
load-balancing = ["octavia>=11.0"]
network = ["neutron>=23.1", "neutron-vpnaas>=23.0"]
placement = ["openstack-placement>=10.0"]
shared-file-system = ["manila>=18.0"]
[project.urls]
Homepage = "https://docs.openstack.org/codegenerator"
Repository = "https://opendev.org/openstack/codegenerator/"
[project.scripts]
openstack-codegenerator = "codegenerator.cli:main"
[build-system]
requires = ["pbr>=6.0.0", "setuptools>=64.0.0"]
build-backend = "pbr.build"
[tool.uv]
[tool.ruff]
line-length = 79
target-version = "py38"
[tool.setuptools]
packages = [
"codegenerator"
]
[tool.ruff.lint]
# enable the following rule classes:
#
# C4: https://docs.astral.sh/ruff/rules/#flake8-comprehensions-c4
# UP: https://docs.astral.sh/ruff/rules/#pyupgrade-up
select = ["C4", "UP"]
[tool.ruff.format]
quote-style = "double"
docstring-code-format = true
skip-magic-trailing-comma = true
[tool.mypy]
show_column_numbers = true
show_error_context = true
ignore_missing_imports = true
# follow_imports = normal
follow_imports = "skip"
incremental = true
check_untyped_defs = true
warn_unused_ignores = true