-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Merge PEP 660 implementation into main
#3488
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Changes: - Deprecate the --egg-base parameter for dist_info and add --output-dir as replacement (Since the egg format is mostly deprecated, it is nice to move away from this nomenclature...)
Avoid using the editables dependency
- The current implementation is using it to simply place .pth file
pointing to the project directory anyway...
- Adding a dependency for creating a file with a single line is a bit
overkill.
Avoid importing pkg_resources directly
- Setuptools wants to move away from pkg_resources
Replace custom wheel build with re-use of bdist_wheel
- pro: avoid re-implementing the archiving logic and make sure it is
compatible with the same archive format used by the final wheels.
- con: the API of wheel is not exactly stable or exported as public.
This change is heavily inspired by the existing develop command - Use namespaces.Installer to ensure legacy namespaces are handled.
- Improve the skeleton that would allow the separation between different editable strategies - Extract strategy for static .pth files - Recognise the static .pth file as the primary strategy for src-layout packages in a "non"-strict scenario
- Move test_editable_prefix from test_develop to test_editable_install - Add more tests for editable install focusing on packages using namespaces (legacy or PEP 420)
openstack-mirroring
pushed a commit
to openstack/python-heatclient
that referenced
this pull request
May 7, 2025
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 Co-Authored-By: Sean Mooney <work@seanmooney.info> Change-Id: I0fd13f34ddeec25161d63437f2ea14f7b3a4c42e
SeanMooney
added a commit
to SeanMooney/openstack-pyproject-toml
that referenced
this pull request
May 7, 2025
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
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
May 7, 2025
* Update neutron from branch 'master'
to 344baa4d4ba821baa8307c22d4cfe6494b19496c
- 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
Change-Id: Iee3338c1dd583fc35d93a3e6e74f8f71b7f076e0
openstack-mirroring
pushed a commit
to openstack/neutron
that referenced
this pull request
May 7, 2025
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 Change-Id: Iee3338c1dd583fc35d93a3e6e74f8f71b7f076e0
openstack-mirroring
pushed a commit
to openstack/neutron-lib
that referenced
this pull request
May 8, 2025
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 Change-Id: I949ce04599a1945b4535506e361d0dc2a701b775
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
May 8, 2025
* Update neutron-lib from branch 'master'
to 3a160219ece5dfefa60d6843d4f518f0a313f018
- 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
Change-Id: I949ce04599a1945b4535506e361d0dc2a701b775
openstack-mirroring
pushed a commit
to openstack/heat
that referenced
this pull request
May 9, 2025
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 Co-Authored-By: Sean Mooney <work@seanmooney.info> Change-Id: Iebe24254a74a03d388c2ad768f4bc79945047084
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
May 9, 2025
* Update heat from branch 'master'
to 88027a901b49e7c19d8dd11bd70b51b4c6e8d895
- 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
Co-Authored-By: Sean Mooney <work@seanmooney.info>
Change-Id: Iebe24254a74a03d388c2ad768f4bc79945047084
openstack-mirroring
pushed a commit
to openstack/ceilometermiddleware
that referenced
this pull request
May 12, 2025
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 Co-Authored-By: Sean Mooney <work@seanmooney.info> Change-Id: Iab8fe3cf745741496dfde2fe3ae88d6aada8cf28
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
May 12, 2025
* Update ceilometermiddleware from branch 'master'
to 9cf77fd74228de0d4d6929f1fbfa09c1197be751
- 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
Co-Authored-By: Sean Mooney <work@seanmooney.info>
Change-Id: Iab8fe3cf745741496dfde2fe3ae88d6aada8cf28
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
May 16, 2025
* Update swift from branch 'master'
to 43aa7ec26155ccc72d1213b4b9c61c272f607a2a
- 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
Change-Id: I82e0c130c4022164bc8e4d1120aae9bdb9a43b5d
openstack-mirroring
pushed a commit
to openstack/swift
that referenced
this pull request
May 16, 2025
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 Change-Id: I82e0c130c4022164bc8e4d1120aae9bdb9a43b5d
openstack-mirroring
pushed a commit
to openstack/python-watcherclient
that referenced
this pull request
May 20, 2025
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 Change-Id: Ia68aa799a0c4daaffd59c6faa2b59a5dda4015a8
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
May 20, 2025
* Update python-watcherclient from branch 'master'
to 3fa37f817ea9680a304a7393b1d89aea5761ed9b
- 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
Change-Id: Ia68aa799a0c4daaffd59c6faa2b59a5dda4015a8
openstack-mirroring
pushed a commit
to openstack/watcher-tempest-plugin
that referenced
this pull request
May 20, 2025
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 Change-Id: I46d3905209a39fb17c563911b5c0ff1df21f9c4d
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
May 20, 2025
* Update watcher-tempest-plugin from branch 'master'
to cae42d194c2550b2d44046c9650ef58e2b70a428
- Merge "add pyproject.toml to support pip 23.1"
- 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
Change-Id: I46d3905209a39fb17c563911b5c0ff1df21f9c4d
openstack-mirroring
pushed a commit
to openstack/watcher-dashboard
that referenced
this pull request
May 20, 2025
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 Change-Id: I28715183ae9c1f9b75d6d68d6a8a0d554bffd9ce
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
May 20, 2025
* Update watcher-dashboard from branch 'master'
to 29be9daeccfd462b1be176378cb2ab90bfc584df
- Merge "add pyproject.toml to support pip 23.1"
- 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
Change-Id: I28715183ae9c1f9b75d6d68d6a8a0d554bffd9ce
openstack-mirroring
pushed a commit
to openstack/python-aodhclient
that referenced
this pull request
May 28, 2025
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 Co-Authored-By: Sean Mooney <work@seanmooney.info> Change-Id: Iabcea21af84e1664030d421561c9d166290dc860
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
May 28, 2025
* Update python-aodhclient from branch 'master'
to f83e495968d14ac497abdbdc773635e6f9f1f5e5
- Merge "add pyproject.toml to support pip 23.1"
- 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
Co-Authored-By: Sean Mooney <work@seanmooney.info>
Change-Id: Iabcea21af84e1664030d421561c9d166290dc860
openstack-mirroring
pushed a commit
to openstack/aodh
that referenced
this pull request
Jun 5, 2025
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 Co-Authored-By: Sean Mooney <work@seanmooney.info> Change-Id: I07ac70065b276aa70eea5d5f1a5a0ac1a94f1242
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
Jun 5, 2025
* Update aodh from branch 'master'
to a1be40e05e0cbe450503c7fb187763d5731ec6e6
- Merge "add pyproject.toml to support pip 23.1"
- 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
Co-Authored-By: Sean Mooney <work@seanmooney.info>
Change-Id: I07ac70065b276aa70eea5d5f1a5a0ac1a94f1242
openstack-mirroring
pushed a commit
to openstack/horizon
that referenced
this pull request
Jun 9, 2025
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 addtionally horizon was using a legacy packaging hook which is removed by this commit. Change-Id: I904376f05c2ceca8db9dc989909cb05ea65b79f3
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
Jun 9, 2025
* Update horizon from branch 'master'
to d2393c333d74da2f21bab0ec50c2a9274efc2dee
- Merge "add pyproject.toml to support pip 23.1"
- 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
addtionally horizon was using a legacy packaging hook
which is removed by this commit.
Change-Id: I904376f05c2ceca8db9dc989909cb05ea65b79f3
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
Jul 23, 2025
* Update ironic-ui from branch 'master'
to 488d7003858f18034fcc097bad7be069e2aada38
- Merge "add pyproject.toml to support pip 23.1"
- 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.
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
Co-Authored-By: Sean Mooney <work@seanmooney.info>
Change-Id: I3db53e52556c017111beb7894957be8364fd8164
openstack-mirroring
pushed a commit
to openstack/ironic-ui
that referenced
this pull request
Jul 23, 2025
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. 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 Co-Authored-By: Sean Mooney <work@seanmooney.info> Change-Id: I3db53e52556c017111beb7894957be8364fd8164
openstack-mirroring
pushed a commit
to openstack/networking-sfc
that referenced
this pull request
Aug 18, 2025
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. 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 Co-Authored-By: Sean Mooney <work@seanmooney.info> Change-Id: Ieeeb059b5d617fe84f60e77defd88a72b5598f0f
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
Aug 18, 2025
* Update networking-sfc from branch 'master'
to b7b03bcd34bad6b062853cc745b76b2a6e532144
- Merge "add pyproject.toml to support pip 23.1"
- 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.
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
Co-Authored-By: Sean Mooney <work@seanmooney.info>
Change-Id: Ieeeb059b5d617fe84f60e77defd88a72b5598f0f
openstack-mirroring
pushed a commit
to openstack/glance
that referenced
this pull request
Sep 18, 2025
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 Change-Id: I9600d7bf45d48b83c8b066bda20680365bedade7 Signed-off-by: Sean Mooney <work@seanmooney.info>
openstack-mirroring
pushed a commit
to openstack/openstack
that referenced
this pull request
Sep 18, 2025
* Update glance from branch 'master'
to 7a21722ecdd349610102ce4ea67705dd0c2c4fb0
- 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
Change-Id: I9600d7bf45d48b83c8b066bda20680365bedade7
Signed-off-by: Sean Mooney <work@seanmooney.info>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The idea of this PR is just to mark the implementation as "complete enough" / "tested enough" that it can be merged into
main.The main concepts of the implementation were presented in #3265.
The development of this feature was split into several PRs previously submitted.
Anyone interested in checking these smaller PRs can have a look on the following searches:
Several discussions and feedback were collected in:
Hopefully the development was slow enough and the community engagement was broad enough that there were enough chances of involvement for feedback, design changes, etc... 🤞
Instructions for testing the feature before the PR is merged can be found in https://discuss.python.org/t/help-testing-pep-660-support-in-setuptools/16904.
Summary of changes
userguide/development_modedocs.build_pyandbuild_extto add a mechanism of getting a list of files being packages and to which original files they correspond to.--build-optionand--global-optionin theconfig_settingsargument of thebuild_metahooks (to match the historicpipbehaviour)--global-optionshould actually be a--build-option, but accept it anyway.Closes #2816
Pull Request Checklist
changelog.d/.(See documentation for details)