@@ -24,9 +24,8 @@ combination of wheels and sdists. In a command like ``pip install
24
24
lxml==2.4.0 ``, pip is acting as an integration frontend.
25
25
26
26
27
- ==============
28
- Source trees
29
- ==============
27
+ Source trees
28
+ ============
30
29
31
30
There is an existing, legacy source tree format involving
32
31
``setup.py ``. We don't try to specify it further; its de facto
@@ -128,19 +127,18 @@ Typically this will involve specifying themselves as an in-tree backend, and
128
127
avoiding external build dependencies (usually by vendoring them).
129
128
130
129
131
- =========================
132
- Build backend interface
133
- =========================
130
+ Build backend interface
131
+ ========================
134
132
135
133
The build backend object is expected to have attributes which provide
136
134
some or all of the following hooks. The common ``config_settings ``
137
135
argument is described after the individual hooks.
138
136
139
137
Mandatory hooks
140
- ===============
138
+ ---------------
141
139
142
140
build_wheel
143
- -----------
141
+ '''''''''''
144
142
145
143
::
146
144
@@ -181,7 +179,7 @@ temporary directories. The presence or absence of any caches should not
181
179
make a material difference to the final result of the build.
182
180
183
181
build_sdist
184
- -----------
182
+ '''''''''''
185
183
186
184
::
187
185
@@ -204,10 +202,10 @@ The backend does not need to define this exception type if it would never raise
204
202
it.
205
203
206
204
Optional hooks
207
- ==============
205
+ --------------
208
206
209
207
get_requires_for_build_wheel
210
- ----------------------------
208
+ ''''''''''''''''''''''''''''
211
209
212
210
::
213
211
@@ -227,7 +225,7 @@ Example::
227
225
If not defined, the default implementation is equivalent to ``return [] ``.
228
226
229
227
prepare_metadata_for_build_wheel
230
- --------------------------------
228
+ ''''''''''''''''''''''''''''''''
231
229
232
230
::
233
231
@@ -254,7 +252,7 @@ not defined, it should call ``build_wheel`` and look at the resulting
254
252
metadata directly.
255
253
256
254
get_requires_for_build_sdist
257
- ----------------------------
255
+ ''''''''''''''''''''''''''''
258
256
259
257
::
260
258
@@ -281,7 +279,7 @@ If not defined, the default implementation is equivalent to ``return []``.
281
279
need from the backend to do so.
282
280
283
281
Config settings
284
- ===============
282
+ ---------------
285
283
286
284
::
287
285
@@ -342,7 +340,7 @@ then this indicates an error.
342
340
343
341
344
342
Build environment
345
- =================
343
+ -----------------
346
344
347
345
One of the responsibilities of a build frontend is to set up the
348
346
Python environment in which the build backend will run.
@@ -399,7 +397,7 @@ working directory). A Python library will be provided which frontends can use
399
397
to easily call hooks this way.
400
398
401
399
Recommendations for build frontends (non-normative)
402
- ---------------------------------------------------
400
+ '''''''''''''''''''''''''''''''''''''''''''''''''''
403
401
404
402
A build frontend MAY use any mechanism for setting up a build
405
403
environment that meets the above criteria. For example, simply
@@ -454,7 +452,7 @@ hood and apply duct tape when necessary.
454
452
455
453
456
454
In-tree build backends
457
- ======================
455
+ ----------------------
458
456
459
457
In certain circumstances, projects may wish to include the source code for the
460
458
build backend directly in the source tree, rather than referencing the backend
@@ -495,9 +493,8 @@ would typically involve checking the backend's ``__file__`` attribute against
495
493
the locations in ``backend-path ``.
496
494
497
495
498
- ===============================
499
- Summary of changes to PEP 517
500
- ===============================
496
+ History
497
+ =======
501
498
502
499
The following changes were made to this PEP after the initial reference
503
500
implementation was released in pip 19.0.
0 commit comments