@@ -229,25 +229,25 @@ these fragments in each commit message of a PR:
229
229
`See the configuration file for these checks.
230
230
<https://github.com/numpy/numpy/blob/main/.cirrus.star> `__
231
231
232
- Additional CI Skip Tags
233
- ~~~~~~~~~~~~~~~~~~~~~~~
232
+ Additional CI Tags
233
+ ~~~~~~~~~~~~~~~~~~
234
234
235
235
There are a range of additional tags that provide more fine-grained control over
236
- CI jobs. These tags allow are meant to skip specific jobs that are not needed
237
- for your changes. Here are the new tags you can use:
238
-
239
- * ``[skip circle] ``: skip the CircleCI jobs (documentation and preview mostly)
240
- * ``[skip linux] ``: skip Linux jobs, this is typically not a good idea unless another specific CI run is requested
241
- * ``[skip nixblas] ``: skip BLAS NumPy jobs
242
- * ``[skip sanitizer] ``: skip compiler sanitizer jobs (Linux)
243
- * ``[skip musl] ``: skip musllinux_x86_64 jobs
244
- * ``[skip qemu] ``: skip Linux QEMU jobs
245
- * ``[skip simd] ``: skip SIMD optimization jobs
246
- * ``[skip macos] ``: skip MacOS jobs
247
- * ``[skip mypy] ``: skip ``mypy `` type checking jobs
248
- * ``[skip wingha] ``: skip Windows GHA jobs
249
- * ``[skip wasm] ``: skip Emscripten/Pyodide jobs
250
- * ``[skip codeql] ``: skip CodeQL analysis jobs
236
+ CI jobs. These tags allow are meant to skip or include specific jobs that are
237
+ not needed for your changes. Here are the new tags you can use:
238
+
239
+ * ``[skip/only circle] ``: skip / run only the CircleCI jobs (documentation and preview mostly)
240
+ * ``[skip/only linux] ``: skip / run only Linux jobs, this is typically not a good idea unless another specific CI run is requested
241
+ * ``[skip/only nixblas] ``: skip / run only BLAS NumPy jobs
242
+ * ``[skip/only sanitizer] ``: skip / run only compiler sanitizer jobs (Linux)
243
+ * ``[skip/only musl] ``: skip / run only musllinux_x86_64 jobs
244
+ * ``[skip/only qemu] ``: skip / run only Linux QEMU jobs
245
+ * ``[skip/only simd] ``: skip / run only SIMD optimization jobs
246
+ * ``[skip/only macos] ``: skip / run only MacOS jobs
247
+ * ``[skip/only mypy] ``: skip / run only ``mypy `` type checking jobs
248
+ * ``[skip/only wingha] ``: skip / run only Windows GHA jobs
249
+ * ``[skip/only wasm] ``: skip / run only Emscripten/Pyodide jobs
250
+ * ``[skip/only codeql] ``: skip / run only CodeQL analysis jobs
251
251
252
252
These tags do not need to be in the first line of the commit message and can
253
253
appear anywhere in the body of the commit itself. Additionally, they can be used
@@ -260,7 +260,7 @@ An example commit message to run only Windows F2PY tests and skip other jobs:
260
260
261
261
.. code-block :: text
262
262
263
- CI: Configure F2PY GHA Windows [winci f2py ]
263
+ CI: Configure F2PY GHA Windows [only winf2py ]
264
264
265
265
[skip circle] [skip linux] [skip nixblas] [skip sanitizer] [skip musl]
266
266
[skip qemu] [skip simd] [skip macos] [skip mypy] [skip wingha] [wasm skip]
@@ -269,10 +269,23 @@ An example commit message to run only Windows F2PY tests and skip other jobs:
269
269
[skip azp]
270
270
[skip cirrus]
271
271
272
- Note: The ``[skip azp] `` tag can be anywhere in the commit message, but ``[skip cirrus] `` must be in the first or last line.
272
+ Note: The ``[skip azp] `` tag can be anywhere in the commit message,
273
+ but ``[skip cirrus] `` must be in the first or last line.
274
+
275
+ Helper (compound) tags
276
+ ----------------------
277
+
278
+ Since the tags can be a bit of a mouthful, there are some short-hand helpers,
279
+ which expand to the above.
280
+
281
+ * ``[skip gha] ``: Skips everything on GithubActions except for ``[only ] `` directives
282
+ * ``[skip except] ``: Skips everything except for ``[only ] `` directives
283
+ * ``[docs only] ``: Skips everything but the documentation job
284
+ * ``[skip exotic] ``: ``[skip quemu] [skip simd] [skip macos] [skip wingha] [skip wasm] [skip musl] [skip circle] [skip azp] [ckip cirrus] ``
285
+ * ``[skip tools] ``: Expands to ``[skip codeql] [skip mypy] [skip sanitizer] ``
273
286
274
287
Being CI Sensitive
275
- ------------------
288
+ ~~~~~~~~~~~~~~~~~~
276
289
277
290
Being mindful of CI doesn't have to mean keeping track of an ever increasing
278
291
combinatorial set of tags. Instead, consider the following development workflow
@@ -284,13 +297,13 @@ change to prevent hammering CI.
284
297
+ For most CI workflows this is ``if: "github.repository == 'numpy/numpy'" ``
285
298
+ If that seems too complicated, delete all but the CI workflow which needs testing
286
299
- Make a single clean commit with this change
287
- + Continue working on this branch
300
+ + Continue working on this branch, open a pull request to another branch of your own repo
288
301
- Finally, when everything is ready, make a new branch, and rebase, dropping the
289
302
single commit which removed / commented out ``numpy `` handling
290
303
+ Open a pull request; profit with CI passing / fixes at minimal overhead
291
304
292
305
Note that this is best suited to actions which do not require special
293
- authentication.
306
+ authentication, so the `` dependency-review.yml `` should be the first to go .
294
307
295
308
Test building wheels
296
309
~~~~~~~~~~~~~~~~~~~~
0 commit comments