Skip to content

Commit

Permalink
docs: fix rtd and update release instructions (#484)
Browse files Browse the repository at this point in the history
Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
  • Loading branch information
henryiii committed Apr 9, 2024
1 parent 9415fb7 commit 612ec91
Show file tree
Hide file tree
Showing 2 changed files with 15 additions and 79 deletions.
2 changes: 1 addition & 1 deletion .readthedocs.yaml
Expand Up @@ -13,4 +13,4 @@ build:

python:
install:
- requirements: docs/requirements-docs.txt
- requirements: docs/requirements.txt
92 changes: 14 additions & 78 deletions docs/make_a_release.rst
Expand Up @@ -17,20 +17,6 @@ Prerequisites

* You have a `GPG signing key <https://help.github.com/articles/generating-a-new-gpg-key/>`_.

-------------------------
Documentation conventions
-------------------------

The commands reported below should be evaluated in the same terminal session.

Commands to evaluate starts with a dollar sign. For example::

$ echo "Hello"
Hello

means that ``echo "Hello"`` should be copied and evaluated in the terminal.



---------------------
`PyPI`_: Step-by-step
Expand All @@ -39,92 +25,42 @@ means that ``echo "Hello"`` should be copied and evaluated in the terminal.
1. Make sure that all CI tests are passing on `GitHub Actions`_.


2. Download the latest sources

.. code::
2. Download the latest sources if you don't already have them

$ cd /tmp && \
git clone git@github.com:scikit-build/cmake-python-distributions cmake-python-distributions-release && \
cd cmake-python-distributions-release
.. code:: console
$ git clone git@github.com:scikit-build/cmake-python-distributions
$ cd cmake-python-distributions
3. List all tags sorted by version
.. code::
3. Ask nox for the instructions on what to type

$ git fetch --tags && \
git tag -l | sort -V
.. code:: console
$ nox -s tag_release
4. Choose the next release version number
.. code::
4. Run the suggested lines, probably something like this:

$ release=X.Y.Z
.. code:: console
.. warning::

To ensure the packages are uploaded on `PyPI`_, tags must match this regular
expression: ``^[0-9]+(\.[0-9]+)*(\.post[0-9]+)?$``.


5. Tag the release

.. code::
$ git tag --sign -m "cmake-python-distributions $release" $release main
$ git tag --sign -m 'cmake-python-distributions 3.29.1' 3.29.1 main
$ git push origin 3.29.1
.. warning::

We recommend using a `GPG signing key <https://help.github.com/articles/generating-a-new-gpg-key/>`_
to sign the tag.


6. Publish the release tag

.. code::
5. Check the status of the builds on `GitHub Actions`_.

$ git push origin $release
6. Once the builds are completed, check that the distributions are available on `PyPI`_.

.. note:: This will trigger builds on each CI services and automatically upload the wheels \
and source distribution on `PyPI`_.

7. Check the status of the builds on `GitHub Actions`_.

8. Once the builds are completed, check that the distributions are available on `PyPI`_.

9. Make a GitHub release based on the tag. This will display the latest version
7. Make a GitHub release based on the tag. This will display the latest version
in the GitHub sidebar, and will notify release watchers of the release.
Title it `Version X.Y.Z` and add a little note about what changed (Python only).

10. Create a clean testing environment to test the installation

.. code::
$ pushd $(mktemp -d) && \
mkvirtualenv cmake-$release-install-test && \
pip install cmake && \
cmake --version
.. note::

If the ``mkvirtualenv`` command is not available, this means you do not have `virtualenvwrapper`_
installed, in that case, you could either install it or directly use `virtualenv`_ or `venv`_.

11. Cleanup

.. code::
$ popd && \
deactivate && \
rm -rf dist/* && \
rmvirtualenv cmake-$release-install-test
.. _virtualenvwrapper: https://virtualenvwrapper.readthedocs.io/
.. _virtualenv: https://virtualenv.pypa.io/en/latest
.. _venv: https://docs.python.org/3/library/venv.html


.. _GitHub Actions: https://github.com/scikit-build/cmake-python-distributions/actions/workflows/build.yml

Expand Down

0 comments on commit 612ec91

Please sign in to comment.