@@ -8,28 +8,36 @@ Building distributions
88See the [documentation](https://gregoryszorc.com/docs/python-build-standalone/main/building.html)
99for instructions on building distributions locally.
1010
11- CI labels
12- =========
13- By default, submitting a pull request triggers a complete build of all
14- distributions in CI, which can be time-consuming.
11+ Pull request labels
12+ ===================
13+ By default, pull requests build a small subset of targets defined in
14+ ``pr-targets.yaml ``. Pushes to ``main `` build the full matrix from
15+ ``ci-targets.yaml ``.
1516
16- To conserve CI resources and reduce build times, you can limit the matrix of
17- distributions built by applying specific labels to your pull request. Only
18- distributions matching the specified labels will be built.
17+ Pull request labels can be used to change what CI builds:
1918
20- The following label prefixes can be used to customize the build matrix:
19+ * ``platform:<value> `` filters the selected targets by platform.
20+ * ``arch:<value> `` filters the selected targets by architecture.
21+ * ``libc:<value> `` filters the selected targets by libc.
22+ * ``python:<value> `` replaces the default Python version.
23+ * ``build:<value> `` replaces the default build options.
2124
22- * `platform `
23- * `python `
24- * `build `
25- * `arch `
26- * `libc `
25+ The following labels expand the default pull request matrix:
2726
28- To bypass CI entirely for changes that do not affect the build (such as
29- documentation updates), use the `ci:skip ` label.
27+ * ``platform:all `` uses all targets from ``ci-targets.yaml ``.
28+ * ``python:all `` uses all Python versions from ``ci-targets.yaml ``.
29+ * ``build:all `` uses all build options from ``ci-targets.yaml ``.
30+ * ``ci:all-targets `` bypasses ``pr-targets.yaml `` and uses ``ci-targets.yaml ``.
3031
31- Please utilize these tags when appropriate for your changes to minimize CI
32- resource consumption.
32+ Examples:
33+
34+ * ``platform:linux `` builds only the Linux targets from ``pr-targets.yaml ``.
35+ * ``python:3.13 `` builds the default targets with Python 3.13.
36+ * ``platform:all,platform:linux,python:all `` builds the full Linux matrix.
37+
38+ To bypass CI entirely for changes that do not affect the build, use the
39+ ``ci:skip `` label. The ``documentation `` label is treated the same way. To run
40+ a dry-run build matrix, use ``ci:dry-run ``.
3341
3442Releases
3543========
0 commit comments