@@ -63,11 +63,21 @@ environment, for reproducibility purposes.
63
63
Build backends
64
64
==============
65
65
66
- Popular :term: `build backends <build backend> ` for pure-Python packages include:
66
+ Popular :term: `build backends <build backend> ` for pure-Python packages include,
67
+ in alphabetical order:
68
+
69
+ - Flit-core _ (developed with but separate from :ref: `Flit `). It is meant to be a
70
+ minimal and opinionated build backend. It is not extensible.
67
71
68
72
- Hatchling _, which is developed along with :ref: `Hatch `, but is separate and can
69
73
be used without Hatch. Hatchling is extensible through a plugin system.
70
74
75
+ - PDM-backend _ (developed with but separate from :ref: `PDM `). It provides build
76
+ hooks for extensibility.
77
+
78
+ - Poetry-core _ (developed with but separate from :ref: `Poetry `). It is extensible
79
+ through plugins.
80
+
71
81
- :ref: `setuptools ` (which used to be the only build backend). It can be configured
72
82
programmatically through the :file: `setup.py ` file (but for basic metadata,
73
83
:file: `pyproject.toml ` is preferred).
@@ -80,15 +90,6 @@ Popular :term:`build backends <build backend>` for pure-Python packages include:
80
90
<pyproject-guide-build-system-table>` of :file: `pyproject.toml ` instead), or
81
91
the ``easy_install `` command (cf. :ref: `pip vs easy_install `).
82
92
83
- - Flit-core _ (developed with but separate from :ref: `Flit `). It is meant to be a
84
- minimal and opinionated build backend. It is not extensible.
85
-
86
- - PDM-backend _ (developed with but separate from :ref: `PDM `). It provides build
87
- hooks for extensibility.
88
-
89
- - Poetry-core _ (developed with but separate from :ref: `Poetry `). It is extensible
90
- through plugins.
91
-
92
93
Do **not ** use :ref: `distutils `, which is deprecated, and has been removed from
93
94
the standard library in Python 3.12, although it still remains available from
94
95
setuptools.
@@ -139,13 +140,14 @@ Integrated workflow tools
139
140
These are tools that combine many features in one command line application, such
140
141
as automatically managing virtual environments for a project, building
141
142
distributions, uploading to PyPI, or creating and using (tool-specific) lock
142
- files. They often call the tools mentioned above under the hood.
143
+ files. They often call the tools mentioned above under the hood. In alphabetical
144
+ order:
143
145
144
- - :ref: `Hatch `,
145
146
- :ref: `Flit `,
147
+ - :ref: `Hatch `,
146
148
- :ref: `PDM `,
149
+ - :ref: `Pipenv `,
147
150
- :ref: `Poetry `.
148
- - :ref: `Pipenv `
149
151
150
152
151
153
.. _flit-core : https://pypi.org/project/flit-core/
0 commit comments