Skip to content

Commit d10a6d2

Browse files
committed
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 [1][2]. pip 24.2 has now deprecated a similar fallback to "setup.py develop" and plans to fully remove this in pip 25.0 [3][4][5]. pbr supports editable installs since 6.0.0 so we can get ahead of this by adding our own minimal pyproject.toml to ensure we are using the correct build system. [1] https://pip.pypa.io/en/stable/news/#v23-1 [2] pypa/pip#8368 [3] https://pip.pypa.io/en/stable/news/#v24-2 [4] pypa/pip#11457 [5] https://ichard26.github.io/blog/2024/08/whats-new-in-pip-24.2/ Change-Id: I66b075b15a83e8d30803e92c36683aff569f3d7b (cherry picked from commit 3e0b163)
1 parent 6c01b50 commit d10a6d2

File tree

3 files changed

+5
-4
lines changed

3 files changed

+5
-4
lines changed

pyproject.toml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
[build-system]
2+
requires = ["pbr>=6.0.0", "setuptools>=64.0.0"]
3+
build-backend = "pbr.build"

requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
# you find any incorrect lower bounds, let us know or propose a fix.
44

55
alembic>=1.8.0
6-
pbr!=2.1.0,>=2.0.0 # Apache-2.0
6+
pbr>=6.0.0 # Apache-2.0
77
eventlet>=0.27.0 # MIT
88
SQLAlchemy>=1.4.0 # MIT
99
keystonemiddleware>=4.17.0 # Apache-2.0

setup.py

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,4 @@
1515

1616
import setuptools
1717

18-
setuptools.setup(
19-
setup_requires=['pbr>=2.0.0'],
20-
pbr=True)
18+
setuptools.setup(pbr=True)

0 commit comments

Comments
 (0)