@@ -4,7 +4,13 @@ Python-Blosc2 release procedure
44Preliminaries
55-------------
66
7- * Set the version number in ``pyproject.toml `` to the new version number (e.g. ``X.Y.Z ``).
7+ * Set the version number for the release by using::
8+
9+ python update_version.py X.Y.Z
10+
11+ and double-check the updated version number in ``pyproject.toml`` and with::
12+
13+ python -c "import blosc2; print(blosc2.__version__)"
814
915* Make sure that the c-blosc2 repository is updated to the latest version (or a specific
1016 version that will be documented in the ``RELEASE_NOTES.md ``). In ``CMakeLists.txt `` edit::
@@ -18,11 +24,10 @@ Preliminaries
1824
1925* Make sure that the current main branch is passing the tests in continuous integration.
2026
21- * Build the package and make sure that::
27+ * Build the package and make sure that tests are passing ::
2228
23- python -c "import blosc2; blosc2.print_versions()"
24-
25- is printing the correct versions.
29+ pip install -e ".[test]"
30+ pytest
2631
2732* Make sure that ``RELEASE_NOTES.md `` and ``ANNOUNCE.rst `` are up to date with the
2833 latest news in the release.
@@ -53,19 +58,35 @@ Tagging
5358
5459 git push --tags
5560
61+ * If you happen to have to delete the tag, such as artifacts demonstrates a fault, first delete it locally::
62+
63+ git tag --delete vX.Y.Z
64+
65+ and then remotely on Github:
66+
67+ git push --delete origin vX.Y.Z
68+
5669* Make sure that the tag is passing the tests in continuous integration (this
57- may take more than an hour).
70+ may take about 30 min).
71+
72+ * In case the automatic upload to PyPI fails, you can upload the package
73+ wheels (and tarball!) by downloading the artifacts manually, copying to
74+ an empty dir (say dist), and upload to PyPI with::
75+
76+ rm dist/*
77+ # download artifacts from the tag in github
78+ twine upload --repository blosc dist/*
5879
5980* Update the latest release in the ``doc/python-blosc2.rst `` file with the new version
6081 number (and date?). Do a commit::
6182
6283 git commit -a -m "Update latest release in doc"
6384 git push
6485
65- * Go to ``Blosc/blogsite `` repo, then to "Actions", click on the most recent
66- workflow run (at the top of the list), and then click on the "Re-run all
67- jobs" button to regenerate the documentation and check that it has been
68- correctly updated in https://www.blosc.org.
86+ * Go to ``https://github.com/ Blosc/blogsite `` repo, then to "Actions", click
87+ on the most recent workflow run (at the top of the list), and then click on
88+ the "Re-run all jobs" button to regenerate the documentation and check that
89+ it has been correctly updated in https://www.blosc.org.
6990
7091
7192Checking packaging
@@ -93,6 +114,7 @@ Announcing
93114 skeleton (or possibly as the definitive version). Start the subject with ANN:.
94115
95116* Announce in Mastodon via https://fosstodon.org/@Blosc2 account and rejoice.
117+ Announce it in Bluesky too.
96118
97119
98120Post-release actions
@@ -109,8 +131,9 @@ Post-release actions
109131
110132 XXX version-specific blurb XXX
111133
112- * Update the version number in ``pyproject.toml `` to the next version number
113- (e.g. ``X.Y.(Z+1).dev ``).
134+ * Update the version number in ``pyproject.toml `` and ``version.py `` to the next version number::
135+
136+ python update_version.py X.Y.(Z+1).dev0
114137
115138* Commit your changes with::
116139
0 commit comments