@@ -17,20 +17,6 @@ Prerequisites
1717
1818* You have a `GPG signing key <https://help.github.com/articles/generating-a-new-gpg-key/ >`_.
1919
20- -------------------------
21- Documentation conventions
22- -------------------------
23-
24- The commands reported below should be evaluated in the same terminal session.
25-
26- Commands to evaluate starts with a dollar sign. For example::
27-
28- $ echo "Hello"
29- Hello
30-
31- means that ``echo "Hello" `` should be copied and evaluated in the terminal.
32-
33-
3420
3521---------------------
3622`PyPI `_: Step-by-step
@@ -39,92 +25,42 @@ means that ``echo "Hello"`` should be copied and evaluated in the terminal.
39251. Make sure that all CI tests are passing on `GitHub Actions `_.
4026
4127
42- 2. Download the latest sources
43-
44- .. code ::
28+ 2. Download the latest sources if you don't already have them
4529
46- $ cd /tmp && \
47- git clone git@github.com:scikit-build/cmake-python-distributions cmake-python-distributions-release && \
48- cd cmake-python-distributions-release
30+ .. code :: console
4931
32+ $ git clone git@github.com:scikit-build/cmake-python-distributions
33+ $ cd cmake-python-distributions
5034
51- 3. List all tags sorted by version
5235
53- .. code ::
36+ 3. Ask nox for the instructions on what to type
5437
55- $ git fetch --tags && \
56- git tag -l | sort -V
38+ .. code :: console
5739
40+ $ nox -s tag_release
5841
59- 4. Choose the next release version number
6042
61- .. code : :
43+ 4. Run the suggested lines, probably something like this :
6244
63- $ release=X.Y.Z
45+ .. code :: console
6446
65- .. warning ::
66-
67- To ensure the packages are uploaded on `PyPI `_, tags must match this regular
68- expression: ``^[0-9]+(\.[0-9]+)*(\.post[0-9]+)?$ ``.
69-
70-
71- 5. Tag the release
72-
73- .. code ::
74-
75- $ git tag --sign -m "cmake-python-distributions $release" $release main
47+ $ git tag --sign -m 'cmake-python-distributions 3.29.1' 3.29.1 main
48+ $ git push origin 3.29.1
7649
7750 .. warning ::
7851
7952 We recommend using a `GPG signing key <https://help.github.com/articles/generating-a-new-gpg-key/ >`_
8053 to sign the tag.
8154
8255
83- 6. Publish the release tag
84-
85- .. code ::
56+ 5. Check the status of the builds on `GitHub Actions `_.
8657
87- $ git push origin $release
58+ 6. Once the builds are completed, check that the distributions are available on ` PyPI `_.
8859
89- .. note :: This will trigger builds on each CI services and automatically upload the wheels \
90- and source distribution on `PyPI `_.
91-
92- 7. Check the status of the builds on `GitHub Actions `_.
93-
94- 8. Once the builds are completed, check that the distributions are available on `PyPI `_.
95-
96- 9. Make a GitHub release based on the tag. This will display the latest version
60+ 7. Make a GitHub release based on the tag. This will display the latest version
9761 in the GitHub sidebar, and will notify release watchers of the release.
9862 Title it `Version X.Y.Z ` and add a little note about what changed (Python only).
9963
100- 10. Create a clean testing environment to test the installation
101-
102- .. code ::
103-
104- $ pushd $(mktemp -d) && \
105- mkvirtualenv cmake-$release-install-test && \
106- pip install cmake && \
107- cmake --version
108-
109- .. note ::
110-
111- If the ``mkvirtualenv `` command is not available, this means you do not have `virtualenvwrapper `_
112- installed, in that case, you could either install it or directly use `virtualenv `_ or `venv `_.
113-
114- 11. Cleanup
115-
116- .. code ::
117-
118- $ popd && \
119- deactivate && \
120- rm -rf dist/* && \
121- rmvirtualenv cmake-$release-install-test
122-
123-
124- .. _virtualenvwrapper : https://virtualenvwrapper.readthedocs.io/
125- .. _virtualenv : https://virtualenv.pypa.io/en/latest
126- .. _venv : https://docs.python.org/3/library/venv.html
127-
12864
12965.. _GitHub Actions : https://github.com/scikit-build/cmake-python-distributions/actions/workflows/build.yml
13066
0 commit comments