File: RELEASING.md

package info (click to toggle)
numexpr 2.14.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 784 kB
  • sloc: cpp: 4,250; python: 3,985; ansic: 369; makefile: 203
file content (90 lines) | stat: -rw-r--r-- 2,337 bytes parent folder | download | duplicates (2)
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
Releasing NumExpr
==================

* Author: Robert A. McLeod, Francesc Alted
* Contact: faltet@gmail.com
* Date: 2024-06-20

Following are notes for releasing NumExpr.

Preliminaries
-------------

* Make sure that `RELEASE_NOTES.rst` and `ANNOUNCE.rst` are up-to-date
  with the latest news in the release.
* Ensure that the new version number in `VERSION` is correct.
* Do a commit and a push:

    `git commit -a -m "Getting ready for release X.Y.Z"`

* If the directories `dist` or `artifact` exist delete them.

Local Testing
-------------

* Re-compile locally with MKL support and see if all tests passes as well.
* Run all the benchmarks in `bench/` directory and see if the
  speed-ups are the expected ones.

Tagging
-------

* Create a tag `vX.Y.Z` from `master` and push the tag to GitHub:

    `git tag -a vX.Y.Z -m "Tagging version X.Y.Z"`
    `git push`
    `git push --tags`

* If you happen to have to delete the tag, such as artifacts demonstrates a fault, first delete it locally,

    `git tag --delete vX.Y.Z`

  and then remotely on Github,

    `git push --delete origin vX.Y.Z`

Build Wheels
------------

* Check on GitHub Actions `github.com/pydata/numexpr` that all the wheels built successfully.
* Download `artifacts.zip` and unzip, you should find the source tarball and all wheels.

Releasing
---------

* Upload the built wheels to PyPi via Twine.

    `twine upload --repository numexpr artifact/numexpr*.whl`

* Upload the source distribution.

    `twine upload --repository numexpr artifact/numexpr*.tar.gz`

* Check on `pypi.org/project/numexpr/#files` that the wheels and source have uploaded as expected.

Announcing
----------

* Send an announcement to the NumPy list, PyData and python-announce
  list.  Use the `ANNOUNCE.rst` file as skeleton (or possibly as the
  definitive version). Email should be addressed to the following lists:
  * python-announce-list@python.org
  * numpy-discussion@python.org
  * pydata@googlegroups.com

Post-release actions
--------------------

* Add `.dev0` to the version number in `VERSION`, and bump the bugfix version
  number.
* Create new headers for adding new features in `RELEASE_NOTES.rst`
  and add this place-holder:

  `* **Under development.**`

* Commit your changes:

  `git commit -a -m "Post X.Y.Z release actions done"`
  `git push`

Fin.