summaryrefslogtreecommitdiff
path: root/RELEASE.rst
blob: 09dea52ea2543ac869d9e6e24e71e31b93739fe8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
Release process for ``numpydoc``
================================

Introduction
------------

Example ``__version__``

- 1.8.dev0     # development version of 1.8 (release candidate 1)
- 1.8rc1       # 1.8 release candidate 1
- 1.8rc2.dev0  # development version of 1.8 (release candidate 2)
- 1.8          # 1.8 release
- 1.9.dev0     # development version of 1.9 (release candidate 1)

Test release candidates on numpy, scipy, matplotlib, scikit-image, and networkx.

Process
-------

- Review and update ``doc/release_notes.rst``.

- Update ``__version__`` in ``numpydoc/_version.py``.

- Commit changes::

    git add numpydoc/_version.py doc/release_notes.rst
    git commit -m 'Designate <version> release'

- Add the version number (e.g., `v1.2.0`) as a tag in git::

    git tag -s [-u <key-id>] v<version> -m 'signed <version> tag'

  If you do not have a gpg key, use -u instead; it is important for
  Debian packaging that the tags are annotated

- Push the new meta-data to github::

    git push --tags origin main

  where ``origin`` is the name of the ``github.com:numpy/numpydoc`` repository

- Review the github release page::

    https://github.com/numpy/numpydoc/releases

- Publish on PyPi::

    git clean -fxd
    pip install build wheel twine
    python -m build --sdist --wheel
    twine upload -s dist/*

- Update ``__version__`` in ``numpydoc/_version.py``.

- Commit changes::

    git add numpydoc/_version.py
    git commit -m 'Bump version'
    git push origin main