@@ -35,11 +35,11 @@ in most Python installations through the standard library package
3535:doc: `ensurepip <python:library/ensurepip >`.
3636
3737Alternatively, consider :ref: `pipx ` for the specific use case of installing Python
38- command line applications that are distributed through PyPI.
38+ applications that are distributed through PyPI and run from the command line .
3939Pipx is a wrapper around pip and venv that installs each
4040application into a dedicated virtual environment. This avoids conflicts between
41- the dependencies of different applications, and also with the system
42- (especially on Linux).
41+ the dependencies of different applications, and also with system-wide applications
42+ making use of the same Python interpreter (especially on Linux).
4343
4444For scientific software specifically, consider :ref: `Conda ` or :ref: `Spack `.
4545
@@ -66,8 +66,8 @@ Build backends
6666Popular :term: `build backends <build backend> ` for pure-Python packages include,
6767in alphabetical order:
6868
69- - Flit-core _ -- developed with but separate from :ref: `Flit `. A minimal and
70- opinionated build backend. It does not support plugins.
69+ - :doc: ` Flit-core < flit:pyproject_toml >` -- developed with but separate from :ref: `Flit `.
70+ A minimal and opinionated build backend. It does not support plugins.
7171
7272- Hatchling _ -- developed with but separate from :ref: `Hatch `. Supports plugins.
7373
@@ -82,21 +82,23 @@ in alphabetical order:
8282
8383- :ref: `setuptools `, which used to be the only build backend. Supports plugins.
8484
85- If you use setuptools, please be aware that some features that predate
86- standardisation efforts are now deprecated and only *temporarily kept *
87- for compatibility.
85+ .. caution ::
8886
89- In particular, do **not ** use direct ``python setup.py `` invocations. On the
90- other hand, configuring setuptools with a :file: `setup.py ` file is still fully
91- supported, although it is recommended to use the modern :ref: `[project] table
92- in pyproject.toml <writing-pyproject-toml>` whenever possible and keep
93- :file: `setup.py ` only if programmatic configuration is needed. See
94- :ref: `setup-py-deprecated `.
87+ If you use setuptools, please be aware that some features that predate
88+ standardisation efforts are now deprecated and only *temporarily kept *
89+ for compatibility.
9590
96- Other examples of deprecated features you should **not ** use include the
97- ``setup_requires `` argument to ``setup() `` (use the :ref: `[build-system] table
98- <pyproject-guide-build-system-table>` in :file: `pyproject.toml ` instead), and
99- the ``easy_install `` command (cf. :ref: `pip vs easy_install `).
91+ In particular, do **not ** use direct ``python setup.py `` invocations. On the
92+ other hand, configuring setuptools with a :file: `setup.py ` file is still fully
93+ supported, although it is recommended to use the modern :ref: `[project] table
94+ in pyproject.toml <writing-pyproject-toml>` whenever possible and keep
95+ :file: `setup.py ` only if programmatic configuration is needed. See
96+ :ref: `setup-py-deprecated `.
97+
98+ Other examples of deprecated features you should **not ** use include the
99+ ``setup_requires `` argument to ``setup() `` (use the :ref: `[build-system] table
100+ <pyproject-guide-build-system-table>` in :file: `pyproject.toml ` instead), and
101+ the ``easy_install `` command (cf. :ref: `pip vs easy_install `).
100102
101103Do **not ** use :ref: `distutils `, which is deprecated, and has been removed from
102104the standard library in Python 3.12, although it still remains available from
@@ -144,7 +146,7 @@ Task runners
144146These tools allow you to define and invoke "tasks", such as running tests,
145147compiling documentation, regenerating some files, etc. Each task can be executed
146148in a dedicated virtual environment with the dependencies it requires. The most
147- common tools for this are tox _ and nox _ .
149+ common tools for this are :doc: ` tox < tox:index >` and :doc: ` nox < nox:index >` .
148150
149151
150152Integrated workflow tools
@@ -163,9 +165,6 @@ order:
163165- :ref: `Poetry `.
164166
165167
166- .. _flit-core : https://pypi.org/project/flit-core/
167168.. _hatchling : https://pypi.org/project/hatchling/
168- .. _nox : https://nox.thea.codes
169169.. _pdm-backend : https://backend.pdm-project.org
170170.. _poetry-core : https://pypi.org/project/poetry-core/
171- .. _tox : https://tox.wiki
0 commit comments