Skip to content
This repository was archived by the owner on Jan 25, 2023. It is now read-only.

Commit 748b097

Browse files
authored
Merge pull request numba#6986 from esc/document_release_checklist
document release checklist
2 parents f39fa1e + 077c896 commit 748b097

4 files changed

Lines changed: 121 additions & 0 deletions

File tree

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
---
2+
name: First Release Candidate Checklist (maintainer only)
3+
about: Checklist template for the first release of every series
4+
title: Numba X.Y.Zrc1 Checklist (FIXME)
5+
labels: task
6+
7+
---
8+
9+
10+
## Numba X.Y.Z
11+
12+
* [ ] Merge to master.
13+
- [ ] "remaining Pull-Requests from milestone".
14+
* [ ] Merge change log changes.
15+
- [ ] "PR with changelog entries".
16+
* [ ] Create X.Y release branch.
17+
* [ ] Pin llvmlite to `>=0.A.0rc1,<0.A+1.0`.
18+
* [ ] Annotated tag X.Y.Zrc1 on release branch.
19+
* [ ] Build and upload conda packages on buildfarm (check "upload").
20+
* [ ] Build wheels (`$PYTHON_VERSIONS`) on the buildfarm.
21+
* [ ] Upload wheels and sdist to PyPI (upload from `ci_artifacts`).
22+
* [ ] Verify packages uploaded to Anaconda Cloud and move to
23+
`numba/label/main`.
24+
* [ ] Verify wheels for all platforms arrived on PyPi.
25+
* [ ] Verify ReadTheDocs build.
26+
* [ ] Clean up `ci_artifacts`.
27+
* [ ] Review, merge and check execution of release notebook.
28+
* [ ] Send RC announcement email / post announcement to discourse group.
29+
* [ ] Post link to Twitter.
30+
* [ ] Post link to python-announce-list@python.org.
31+
32+
### Post Release:
33+
34+
* [ ] Tag X.Y+1.0dev0 to start new development cycle on `master`.
35+
* [ ] Update llvmlite dependency spec to match next version via PR to `master`.
36+
* [ ] Update release checklist template with any additional bullet points that
37+
may have arisen during the release.
38+
* [ ] Close milestone (and then close this release issue).
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
---
2+
name: Subsequent Release Candidate Checklist (maintainer only)
3+
about: Checklist template for all subsequent releases (RC 2-N, FINAL and PATCH) of every series
4+
title: Numba X.Y.Zrc1 Checklist (FIXME)
5+
labels: task
6+
7+
---
8+
9+
10+
## numba X.Y.Z
11+
12+
* [ ] Cherry-pick items from the X.Y.Z milestone into a PR.
13+
* [ ] Merge change log modifications and cherry-picks to X.Y release branch.
14+
* [ ] https://github.com/numba/numba/pull/XXXX
15+
* [ ] Annotated tag X.Y.Z on release branch (no `v` prefix).
16+
* [ ] Build and upload conda packages on buildfarm (check "upload").
17+
* [ ] Build wheels (`$PYTHON_VERSIONS`) on the buildfarm.
18+
* [ ] Upload wheels and sdist to PyPI (upload from `ci_artifacts`).
19+
* [ ] Verify packages uploaded to Anaconda Cloud and move to
20+
`numba/label/main`.
21+
* [ ] Verify wheels for all platforms arrived on PyPi.
22+
* [ ] Verify ReadTheDocs build.
23+
* [ ] Clean up `ci_artifacts`.
24+
* [ ] Send RC/FINAL announcement email / post announcement to discourse group.
25+
* [ ] Post link to Twitter.
26+
* [ ] Post link to python-announce-list@python.org.
27+
28+
### Post release
29+
30+
* [ ] Cherry-pick change-log modifications to main branch (`master`) via PR.
31+
* [ ] Update release checklist template.
32+
* [ ] Ping Anaconda Distro team to trigger a build for `defaults` (FINAL ONLY).
33+
* [ ] Close milestone (and then close this release issue).

‎docs/source/developer/index.rst‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ Developer Manual
88
:maxdepth: 2
99

1010
contributing.rst
11+
release.rst
1112
repomap.rst
1213
architecture.rst
1314
dispatching.rst

‎docs/source/developer/release.rst‎

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
Numba Release Process
2+
=====================
3+
4+
The goal of the Numba release process -- from a high level perspective -- is to
5+
publish source and binary artifacts that correspond to a given version
6+
number. This usually involves a sequence of individual tasks that must be
7+
performed in the correct order and with diligence. Numba and llvmlite are
8+
commonly released in lockstep since there is usually a one-to-one mapping
9+
between a Numba version and a corresponding llvmlite version.
10+
11+
This section contains various notes and templates that can be used to create a
12+
Numba release checklist on the Numba Github issue tracker. This is an aid for
13+
the maintainers during the release process and helps to ensure that all tasks
14+
are completed in the correct order and that no tasks are accidentally omitted.
15+
16+
If new or additional items do appear during release, please do remember to add
17+
them to the checklist templates. Also note that the release process itself is
18+
always a work in progress. This means that some of the information here may be
19+
outdated. If you notice this please do remember to submit a pull-request to
20+
update this document.
21+
22+
All release checklists are available as Gitub issue templates. To create a new
23+
release checklist simply open a new issue and select the correct template.
24+
25+
26+
Primary Release Candidate Checklist
27+
-----------------------------------
28+
29+
This is for the first/primary release candidate for minor release i.e. the
30+
first release of every series. It is special, because during this release, the
31+
release branch will have to be created. Release candidate indexing begins at 1.
32+
33+
.. literalinclude:: ../../../.github/ISSUE_TEMPLATE/first_rc_checklist.md
34+
:language: md
35+
:lines: 9-
36+
37+
`Open a primary release checklist <https://github.com/numba/numba/issues/new?template=first_rc_checklist.md>`_.
38+
39+
Subsequent Release Candidates, Final Releases and Patch Releases
40+
----------------------------------------------------------------
41+
42+
Releases subsequent to the first release in a series usually involves a series
43+
of cherry-picks, the recipe is therefore slightly different.
44+
45+
.. literalinclude:: ../../../.github/ISSUE_TEMPLATE/sub_rc_checklist.md
46+
:language: md
47+
:lines: 9-
48+
49+
`Open a subsequent release checklist <https://github.com/numba/numba/issues/new?template=sub_rc_checklist.md>`_.

0 commit comments

Comments
 (0)