diff options
author | Clark Boylan <clark.boylan@gmail.com> | 2021-11-08 08:56:18 -0800 |
---|---|---|
committer | Clark Boylan <clark.boylan@gmail.com> | 2021-11-08 08:56:18 -0800 |
commit | d21c2caf1dbd69ba630075e48254131499f01afe (patch) | |
tree | f5f0ab87680f118134f3daeb06711e4219933b56 /doc | |
parent | 09ee15341014fc0e3bb8a7c3b06a3fa912cfad38 (diff) | |
download | pbr-d21c2caf1dbd69ba630075e48254131499f01afe.tar.gz |
Clarify the need for setup.py with PEP517
There was a misunderstanding that PBRs PEP517 build hooks meant we no
longer needed a setup.py. But it turns out the setuptools build_meta
hooks that we wrap call out to setup.py. This means PBR will continue to
need to be used in conjunction with a setup.py.
This is better for backward compatibiltiy anyway so not a huge loss.
Document this more properly and update the test to reflect it.
Change-Id: If4320da1e89a5c765e0bfe56b724364f9cba34f3
Diffstat (limited to 'doc')
-rw-r--r-- | doc/source/user/using.rst | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/doc/source/user/using.rst b/doc/source/user/using.rst index 7070e01..21aa99b 100644 --- a/doc/source/user/using.rst +++ b/doc/source/user/using.rst @@ -37,8 +37,11 @@ something like this:: ``pyproject.toml`` ------------------ -As an alternative to writing a ``setup.py`` you can instead setup PBR -through the PEP 517 build-system configuration in ``pyproject.toml``. +PBR can be configured as a PEP517 build-system in ``pyproject.toml``. This +currently continues to rely on setuptools which means you need the above +``setup.py`` file to be present. The main benefits to using a +``pyproject.toml`` file with PBR are that you can control the versions of +PBR, setuptools, and wheel that are used avoiding easy_install invocation. Your build-system block in ``pyproject.toml`` will need to look something like this:: @@ -46,6 +49,10 @@ like this:: requires = ["pbr>=5.7.0", "setuptools>=36.6.0", "wheel"] build-backend = "pbr.build" + +Eventually PBR may grow its own direct support for PEP517 build hooks, but +until then it will continue to need setuptools and ``setup.py``. + .. _setup_cfg: ``setup.cfg`` |