Skip to content

Commit ad2d852

Browse files
committed
Add releasing instructions to the README
1 parent 05548f0 commit ad2d852

File tree

1 file changed

+51
-0
lines changed

1 file changed

+51
-0
lines changed

README.md

+51
Original file line numberDiff line numberDiff line change
@@ -300,3 +300,54 @@ corresponding document does not yet exist for PyTorch, but you can examine the
300300
various comments in the
301301
[implementation](https://github.com/data-apis/array-api-compat/blob/main/array_api_compat/torch/_aliases.py)
302302
to see what functions and behaviors have been wrapped.
303+
304+
305+
## Releasing
306+
307+
To release, first note that CuPy must be tested manually (it isn't tested on
308+
CI). Use the script
309+
310+
```
311+
./test_cupy.sh
312+
```
313+
314+
on a machine with a CUDA GPU.
315+
316+
Once you are ready to release, create a PR with a release branch, so that you
317+
can verify that CI is passing. You must edit
318+
319+
```
320+
array_api_compat/__init__.py
321+
```
322+
323+
and update the version (the version is not computed from the tag because that
324+
would break vendorability). You should also edit
325+
326+
```
327+
CHANGELOG.md
328+
```
329+
330+
with the changes for the release.
331+
332+
Then create a tag
333+
334+
```
335+
git tag -a <version>
336+
```
337+
338+
and push it to GitHub
339+
340+
```
341+
git push origin <version>
342+
```
343+
344+
Check that the `publish distributions` action works. Note that this action
345+
will run even if the other CI fails, so you must make sure that CI is passing
346+
*before* tagging.
347+
348+
This does mean you can ignore CI failures, but ideally you should fix any
349+
failures or update the `*-xfails.txt` files before tagging, so that CI and the
350+
cupy tests pass. Otherwise it will be hard to tell what things are breaking in
351+
the future. It's also a good idea to remove any xpasses from those files (but
352+
be aware that some xfails are from flaky failures, so unless you know the
353+
underlying issue has been fixed, a xpass test is probably still xfail).

0 commit comments

Comments
 (0)