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.
|