Migrate requirements to pyproject.toml

Change-Id: I137a0be7596488296366ed5f3150cdff20ab1d95
Signed-off-by: Stephen Finucane <stephenfin@redhat.com>
Depends-on: https://review.opendev.org/c/openstack/requirements/+/987879
This commit is contained in:
Stephen Finucane committed 2026-08-19 10:42:06 +01:00
1 parent de28383513
commit 27b4234fd1
6 files changed
+70 -58

No files matched your search

-5
View File
@@ -1,5 +0,0 @@
docutils>=0.11 # OSI-Approved Open Source, Public Domain
openstackdocstheme>=2.2.1 # Apache-2.0
reno>=3.1.0 # Apache-2.0
sphinx>=2.0.0,!=2.1.0 # BSD
sphinxcontrib-svg2pdfconverter>=0.1.0 # BSD
-2
View File
@@ -1,2 +0,0 @@
-r requirements.txt
-r test-requirements.txt
+51 -1
View File
@@ -10,7 +10,21 @@ authors = [
]
readme = {file = "README.rst", content-type = "text/x-rst"}
license = "Apache-2.0"
dynamic = ["version", "dependencies"]
dynamic = ["version"]
dependencies = [
"cryptography>=2.7", # BSD/Apache-2.0
"decorator>=4.4.1", # BSD
"dogpile.cache>=0.6.5", # BSD
"iso8601>=0.1.11", # MIT
"jmespath>=0.9.0", # MIT
"jsonpatch!=1.20,>=1.16", # BSD
"keystoneauth1>=5.10.0", # Apache-2.0
"os-service-types>=1.8.1", # Apache-2.0
"pbr!=2.1.0,>=2.0.0", # Apache-2.0
"platformdirs>=3", # MIT License
"psutil>=3.2.2", # BSD
"PyYAML>=3.13", # MIT
]
requires-python = ">=3.11"
classifiers = [
"Environment :: OpenStack",
@@ -25,6 +39,42 @@ classifiers = [
"Programming Language :: Python :: 3.14",
]
[dependency-groups]
ansible = [
"ansible", # GPL
]
doc = [
"docutils>=0.11", # OSI-Approved Open Source, Public Domain
"openstackdocstheme>=2.2.1", # Apache-2.0
"reno>=3.1.0", # Apache-2.0
"sphinx>=2.0.0,!=2.1.0", # BSD
"sphinxcontrib-svg2pdfconverter>=0.1.0", # BSD
]
test = [
"coverage!=4.4,>=4.0", # Apache-2.0
"ddt>=1.0.1", # MIT
"fixtures>=3.0.0", # Apache-2.0/BSD
"hacking>=7.0.0,<7.1.0", # Apache-2.0
"jsonschema>=3.2.0", # MIT
"oslo.config>=6.1.0", # Apache-2.0
"oslotest>=3.2.0", # Apache-2.0
"prometheus-client>=0.4.2", # Apache-2.0
"requests-mock>=1.2.0", # Apache-2.0
"statsd>=3.3.0",
"stestr>=1.0.0", # Apache-2.0
"testscenarios>=0.4", # Apache-2.0/BSD
"testtools>=2.2.0", # MIT
"keyring>=24.0.0", # MIT
]
typing = [
"mypy", # MIT
"types-decorator", # Apache-2.0
"types-jmespath", # Apache-2.0
"types-PyYAML", # Apache-2.0
"types-requests", # Apache-2.0
"types-simplejson", # Apache-2.0
]
[project.urls]
Homepage = "https://docs.openstack.org/openstacksdk"
Repository = "https://opendev.org/openstack/openstacksdk/"
-12
View File
@@ -1,12 +0,0 @@
cryptography>=2.7 # BSD/Apache-2.0
decorator>=4.4.1 # BSD
dogpile.cache>=0.6.5 # BSD
iso8601>=0.1.11 # MIT
jmespath>=0.9.0 # MIT
jsonpatch!=1.20,>=1.16 # BSD
keystoneauth1>=5.10.0 # Apache-2.0
os-service-types>=1.8.1 # Apache-2.0
pbr!=2.1.0,>=2.0.0 # Apache-2.0
platformdirs>=3 # MIT License
psutil>=3.2.2 # BSD
PyYAML>=3.13 # MIT
-14
View File
@@ -1,14 +0,0 @@
coverage!=4.4,>=4.0 # Apache-2.0
ddt>=1.0.1 # MIT
fixtures>=3.0.0 # Apache-2.0/BSD
hacking>=7.0.0,<7.1.0 # Apache-2.0
jsonschema>=3.2.0 # MIT
oslo.config>=6.1.0 # Apache-2.0
oslotest>=3.2.0 # Apache-2.0
prometheus-client>=0.4.2 # Apache-2.0
requests-mock>=1.2.0 # Apache-2.0
statsd>=3.3.0
stestr>=1.0.0 # Apache-2.0
testscenarios>=0.4 # Apache-2.0/BSD
testtools>=2.2.0 # MIT
keyring>=24.0.0 # MIT
+19 -24
View File
@@ -1,5 +1,5 @@
[tox]
minversion = 4.3.0
minversion = 4.28.0
envlist = pep8,py3
[testenv]
@@ -17,9 +17,8 @@ setenv =
OS_STDERR_CAPTURE={env:OS_STDERR_CAPTURE:true}
constraints =
{env:TOX_CONSTRAINTS_FILE:https://releases.openstack.org/constraints/upper/master}
deps =
-r{toxinidir}/test-requirements.txt
-r{toxinidir}/requirements.txt
dependency_groups =
test
commands =
stestr run {posargs}
stestr slowest
@@ -61,9 +60,11 @@ commands =
[testenv:pep8]
description =
Run style checks.
dependency_groups =
test
typing
deps =
pre-commit
{[testenv:mypy]deps}
commands =
pre-commit run -a
{[testenv:mypy]commands}
@@ -71,24 +72,18 @@ commands =
[testenv:mypy]
description =
Run type checks.
deps =
{[testenv]deps}
mypy
types-decorator
types-jmespath
types-PyYAML
types-requests
types-simplejson
dependency_groups =
test
typing
commands =
mypy --cache-dir="{envdir}/mypy_cache" {posargs:openstack}
[testenv:venv]
description =
Run specified command in a virtual environment with all dependencies installed.
deps =
-r{toxinidir}/test-requirements.txt
-r{toxinidir}/requirements.txt
-r{toxinidir}/doc/requirements.txt
dependency_groups =
test
doc
commands = {posargs}
[testenv:debug]
@@ -122,23 +117,23 @@ passenv =
HOME
USER
ANSIBLE_VAR_*
deps =
{[testenv]deps}
dependency_groups =
ansible
commands = {toxinidir}/extras/run-ansible-tests.sh -e {envdir} {posargs}
[testenv:docs]
description =
Build documentation in HTML format.
deps =
-r{toxinidir}/doc/requirements.txt
dependency_groups =
doc
commands =
sphinx-build -W --keep-going -b html -j auto doc/source/ doc/build/html
[testenv:pdf-docs]
description =
Build documentation in PDF format.
deps = {[testenv:docs]deps}
dependency_groups =
doc
allowlist_externals =
make
commands =
@@ -148,8 +143,8 @@ commands =
[testenv:releasenotes]
description =
Build release note documentation in HTML format.
deps =
-r{toxinidir}/doc/requirements.txt
dependency_groups =
doc
commands =
sphinx-build -W --keep-going -b html -j auto releasenotes/source releasenotes/build/html