add pyproject.toml to support pip 23.1

pip 23.1 removed the "setup.py install" fallback for projects
that do not have pyproject.toml and now uses a pyproject.toml
which is vendored in pip.
To address that, this change adds the minimal pyproject.toml
to enable pbr to be properly used to build editable wheels.

This is required to support installing devstack on
centos stream 9 and related distros with GLOBAL_VENV=True
Without this change the wsgi scripts are not generated in
editable mode. i.e. pip install -e /opt/stack/keystone

See https://pip.pypa.io/en/stable/news/#v23-1
and pypa/pip#8368 for more
details on the removal of the fallback support.

setuptools v64.0.0 is used to support editable installs
via its PEP-660 implmentation
pypa/setuptools#3488

Note:
- Similar change https://review.opendev.org/q/topic:%22pip-23.1-support%22
  added to other project. It will help to fix stable branches tox jobs.
- It also bumps pbr minimum version to 5.8.0.

Change-Id: I191cdbc23bb15f90930ae5ec7387d8e532b2fad1
Signed-off-by: Chandan Kumar (raukadah) <chkumar@redhat.com>
This commit is contained in:
Chandan Kumar (raukadah)
2026-04-01 18:15:08 +05:30
parent dcab101166
commit 7a662b9a50
2 changed files with 4 additions and 1 deletions

3
pyproject.toml Normal file
View File

@@ -0,0 +1,3 @@
[build-system]
requires = ["pbr>=5.7.0", "setuptools>=64.0.0", "wheel"]
build-backend = "pbr.build"

View File

@@ -1,7 +1,7 @@
# The order of packages is significant, because pip processes them in the order
# of appearance. Changing the order has an impact on the overall integration
# process, which may cause wedges in the gate later.
pbr!=2.1.0,>=2.0.0 # Apache-2.0
pbr>=5.8.0 # Apache-2.0
keystoneauth1>=3.3.0 # Apache-2.0
stevedore>=1.20.0 # Apache-2.0